BsScriptPostProcessSettings.cpp 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
  3. #include "BsScriptPostProcessSettings.h"
  4. #include "BsMonoManager.h"
  5. #include "BsMonoAssembly.h"
  6. #include "BsMonoClass.h"
  7. #include "BsMonoUtil.h"
  8. #include "BsCoreThread.h"
  9. namespace BansheeEngine
  10. {
  11. ScriptPostProcessSettings::ScriptPostProcessSettings(MonoObject* instance)
  12. :ScriptObject(instance)
  13. { }
  14. void ScriptPostProcessSettings::initRuntimeData()
  15. {
  16. metaData.scriptClass->addInternalCall("Internal_CreateDefault", &ScriptPostProcessSettings::internal_CreateDefault);
  17. // Validation
  18. #if BS_DEBUG_MODE
  19. MonoAssembly* engineAssembly = MonoManager::instance().getAssembly(ENGINE_ASSEMBLY);
  20. MonoClass* autoExposureSettingsClass = engineAssembly->getClass("BansheeEngine", "AutoExposureSettings");
  21. MonoClass* tonemappingSettingsClass = engineAssembly->getClass("BansheeEngine", "TonemappingSettings");
  22. MonoClass* whieBalanceSettingsClass = engineAssembly->getClass("BansheeEngine", "WhiteBalanceSettings");
  23. MonoClass* colorGradingSettingsClass = engineAssembly->getClass("BansheeEngine", "ColorGradingSettings");
  24. assert(metaData.scriptClass->getInstanceSize() == sizeof(PostProcessSettings));
  25. assert(autoExposureSettingsClass->getInstanceSize() == sizeof(AutoExposureSettings));
  26. assert(tonemappingSettingsClass->getInstanceSize() == sizeof(TonemappingSettings));
  27. assert(whieBalanceSettingsClass->getInstanceSize() == sizeof(WhiteBalanceSettings));
  28. assert(colorGradingSettingsClass->getInstanceSize() == sizeof(ColorGradingSettings));
  29. #endif
  30. }
  31. void ScriptPostProcessSettings::internal_CreateDefault(PostProcessSettings* output)
  32. {
  33. *output = PostProcessSettings();
  34. }
  35. }