GaijinEntertainment / DagorEngine

Dagor Engine and Tools source code from Gaijin Games KFT
Other
2.2k stars 274 forks source link

Generating a Visual Studio solution #10

Open kterhorst opened 1 year ago

kterhorst commented 1 year ago

Hi, is it possible to generate a VS solution from the Jam files?

Abdullah20z commented 1 year ago

نعم

NicSavichev commented 1 year ago

It is possible, I will add example in next update.

OshidaBCF commented 1 year ago

Sweet i was just about to ask that

Finding my way between each include is quite hard

karriszou commented 12 months ago

@NicSavichev How to generate a Visual Studio Solution for the new release, please explain here. Thank you!

NicSavichev commented 12 months ago

@NicSavichev How to generate a Visual Studio Solution for the new release, please explain here. Thank you!

It is not possible at the moment but we hope to add working solution (for engine, tools and samples) to repo soon

anyiscsak commented 10 months ago

Hey Guys! The Visual Studio project has been added. Currently it contains the skieSample and testGI projects. The win32 and win64 platform work well, the Android and linux64 still requires some fixing. image DagorEngine │ ├─ Project_1 │ ├── Project_1's code │ └── prog (common engine code) ├─ Project_2 │ ├── Project_2's code │ └── prog (common engine code) ... the prog project is like a shared project in Visual Studio ecosystem. It does not participate in build. The Visual Studio is just a layer above the jam, when a project build is started it just calls the jam with the appropriate compile flags. E.g. when dev win64 is selected and building the skieSample it calls the jam -sPlatform=win64 -sConfig=dev on DagorEngine\samples\skiesSample\prog\jamfile The goal with the current VS project structure is to work out of the box. It doesn't require generate before use, just open the DagorEngine.sln in the root folder, select the desired platform + config, set the startup project (currently skiesSample is the default), press F5, it will build and start the debug session. There is plan to add more projects to the solution like AV(Assert Viewer), and there is a plan to release Visual Studio Extension to extend the intellisense behavior and add other develop time features. E.g. the DagorEngine support shader hot reload, so while the game is running, shader files can be modified, compile a new shaderdump, and reload it from game. Right now the intended way to compile the shader dump is to Compile the desired bat file

image

But there is a Visual Studio limitation. If there is an active debug session, can't start a compile and vice versa. So when a project is debugged and hot reload function can't be utilized from VS right now, but with the up coming Extension for DagorEngine it will be.