Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes for compiling without Advanced Lighting #331

Conversation

lukaspj
Copy link
Contributor

@lukaspj lukaspj commented Oct 2, 2020

Fix for #24

Building without Advanced Lighting (TORQUE_ADVANCED_LIGHTING unchecked in CMake) generated linker errors and an alert when the game attempted to set the light manager. This ifdefs the offending code and changes the template (BaseGame only - I didn't update the old Full template) to try to set light managers in order, based on the existing (but unused) $lightManager::defaults pref.

I removed the changes to the scripts, it seems to be handled differently now

Original PR from GarageGames repo:
GarageGames/Torque3D#2168

@lukaspj lukaspj added bug Something isn't working help wanted Extra attention is needed labels Oct 3, 2020
@lukaspj
Copy link
Contributor Author

lukaspj commented Oct 3, 2020

I'm not sure I have time to get verify this fix in the near future. Would be great if someone could review this.

@Ragora
Copy link
Contributor

Ragora commented Aug 18, 2021

On Linux it doesn't fix all the possible advanced light manager instances (maybe due to age) but:

CMakeFiles/BOL.dir/__/__/Engine/source/materials/materialList.cpp.o: in function `MaterialList::initMatInstances(FeatureSet const&, GFXVertexFormat const*)':
/home/ragora/Documents/Projects/Personal/Torque3D/Engine/source/materials/materialList.cpp:422: undefined reference to `typeinfo for AdvancedLightManager'
CMakeFiles/BOL.dir/__/__/Engine/source/renderInstance/renderDeferredMgr.cpp.o: in function `bool Sim::findObject<AdvancedLightBinManager>(char const*, AdvancedLightBinManager*&)':
/home/ragora/Documents/Projects/Personal/Torque3D/Engine/source/console/sim.h:144: undefined reference to `typeinfo for AdvancedLightBinManager'
CMakeFiles/BOL.dir/__/__/Engine/source/renderInstance/renderProbeMgr.cpp.o: in function `RenderProbeMgr::render(SceneRenderState*)':
/home/ragora/Documents/Projects/Personal/Torque3D/Engine/source/renderInstance/renderProbeMgr.cpp:729: undefined reference to `AdvancedLightBinManager::smUseSSAOMask'
clang-12: fatal error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [Tools/CMake/CMakeFiles/BOL.dir/build.make:16476: /home/ragora/Documents/Projects/Personal/Torque3D/My Projects/BOL/game/BOL] Error 1
make[1]: *** [CMakeFiles/Makefile2:399: Tools/CMake/CMakeFiles/BOL.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

@chaigler
Copy link
Contributor

chaigler commented Jun 9, 2023

This is likely outdated by now - I wrote this for 3.10 if I recall.

Does raise a larger question of whether Basic Lighting is even worth maintaining at this point (has anyone actually been maintaining it??) or if "Advanced Lighting" should just be the only option.

@Azaezel Azaezel closed this Sep 28, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants