XP Tutorials

XP Development

If you are into software development, writing your own XP’s are the most powerful way you can extend CC3+. An XP is basically a .dll file with your own custom commands for CC3+. It is way more powerful than writing macros for CC3+, since XP’s gives you access to the internals, allowing you to do things that won’t be possible in macros.

The articles listed below takes you through the basics of developing such XP’s. Check out the first article for descriptions and download links to the tools you’ll need, while the other articles explain various features and concepts.

Be warned that this is about software development. To take advantage of these articles, you should already be familiar with the concepts of writing your own software, you should know what compiling and linking is all about, you should know the basics of C++, and it is an advantage to already be familiar with Visual Studio and the Windows SDK. You don’t need to be an experienced software developer, but some familiarity is strongly recommended.


Here are the basic tools you will use for XP development. See part 1 below for setup instructions

  • Visual Studio 2019: All the tutorials are written for Visual Studio 2019, although earlier versions will work fine too. You can use whatever edition of Visual Studio you prefer, but the Community edition contains everything you need for building XP’s, and is the only edition that is free.
  • XP Toolkit: The XP toolkit provides access to the API’s you’ll need to use when writing XP’s. It also contains some documentation. For all my tutorials, I assume you have this installed under C:\FCWXP, see part 1 for details.
  • Visual Studio XP Template: This is a custom XP project template for Visual Studio, making it easier to start a new XP project in VS without having to set all those project properties. Note that the settings in this template assumes that your XP toolkit is installed under C:\FCWXP and that you have a copy of CC3+ for development purposes in C:\CC3Plus. If you don’t, you’ll have to change the paths in the project properties every time you make a new project. You don’t have to use this custom template however, the instructions for setting up from scratch is found in part 1 below.

Part 1: Getting Started

This first article takes you trough the basics of installing the tools you need, setting up the environment, and making your first basic add-on.

Part 2: Entity Basics

The second article in the series tackles entities and drawing lists. Here you will learn how to create, find, modify and delete entities, as well as some information about memory management.