This is fork of Apolyton CtP2 Source Code project. Original code was imported from https://ctp2.darkdust.net/anonsvn/ repository.
- Open ctp2_code/ctp/civctp.sln with MS Visual Studio 2017 Community Edition (VC++ and Platform SDK for Windows 10 should be installed).
- Build "ctp2" project.
The main goal of this project is to completely replace DirectDraw based graphics engine with Direct3D 11 based 2d engine.
All rendering in original CtP2 based on a set of primitive drawing functions (like primitives_DrawText(), primitives_BevelLeftPiece16() etc.) and various XxxBltYyy functions(like ColorBlt(), StretchBlt() etc.), so this is what should be replaced.
The new graphics engine provides similar functions but instead of immediate blitting these funtions just change scene's state (scene is a tree of rectangles and primitives).
On the render stage the renderer takes scene data as input and translates it to real drawing instructions. Now I am working on D3d renderer implementation, but OpenGL or Skia library based renderers may also be easily implemented.
Check https://github.com/RolandTaverner/ctp2/tree/d3dui
Written with StackEdit.