New Projects
Project Types
The Engine has built-in support for Lua scripting, which enables you to write logic without writing a line of C++ code, as well as the ability to extend the Engine's C++ built-in objects. You can also write logic in C++, extending the functionality provided by the Engine's logical layer framework.
Creating New Script Projects
See Project in Get to Know the Flexi Editor.
Creating New C++ Projects
The structure of the current C++ template is separating the Engine from the project, while merging the project internal source code, binary and resources, the general structure is as follows:
Project Directory:
bin
res
script
source
xxx.projectinfo
Considering the authority management of each type of developers, the project can be adjusted into the following structure after getting the SDK of the Engine:
Project Directory:
00_engine
include
lib
source
extern
01_program
02_config
00_engine
standalone
unique_editor
unique_engine
windows
debug_md_vs2015x64
release_md_vs2015x64
tools
01_client
03_res
xxx.projectinfo
Then adjust the configuration in xxx.projectinfo, projectinfo is configured in the following format:
[Engine]
; Engine Type
EngineType=DX11
; The Engine version number when created
Version=18692
; Project Preview Path
ShootPath=
[Project]
; Binary Directory(relative to.projectinfo)
BinaryPath=bin\windows
; Script Directory(relative to.projectinfo)
ScriptPath=script
; Configure Directory(relative to.projectinfo)
ConfigPath=config
; Resource Directory(relative to.projectinfo)
ResourcePath=res
; The project needs to load the DLL configuration(relative to ConfigPath)
ProjectConfig=project.ini
; Global Effect Configuration Path(relative to.projectinfo)
Quality=content/quality/quality.setting
; Plugin Path(relative to.projectinfo)
PluginPath=plugins
EnabledPlugins=
; Project Source Code Path(relative to.projectinfo)
Source=source
[NeedRegisterPaths]
; Need Register Paths, after registration, obtain through ICore::GetRegisteredPath(path_name)
cache=cache
game_bin=bin\windows
game_script=script
game_config=config
game_plugin=plugins
Project DLL Loading Configurations
You can modify config\project.ini in the Project Directory to configure the project DLL that needs to be loaded.
Example:
[Module]
fx_game.dll
The debug version of the project DLL should be generated in the Project Directory under bin\windows\debug_md_vs2015x64. The release version DLL should be generated in the Project Directory under bin\windows\release_md_vs2015x64. The Engine will automatically load the project DLL in the corresponding directory based on whether the current fx_main.exe is debug version or release version (base on the path where fx_main.exe is stored).