| 1026 | } |
| 1027 | |
| 1028 | void PhysXSampleApplication::onInit() |
| 1029 | { |
| 1030 | Ps::MutexT<Ps::RawAllocator>::ScopedLock lock(mInputMutex); |
| 1031 | |
| 1032 | Renderer* renderer = getRenderer(); |
| 1033 | |
| 1034 | getPlatform()->getSampleUserInput()->setRenderer(renderer); |
| 1035 | getPlatform()->getSampleUserInput()->registerInputEventListerner(mInputEventBuffer); |
| 1036 | |
| 1037 | PxU32 clientWidth, clientHeight; |
| 1038 | renderer->getWindowSize(clientWidth, clientHeight); |
| 1039 | updateCameraViewport(clientWidth, clientHeight); |
| 1040 | |
| 1041 | RendererDirectionalLightDesc lightdesc; |
| 1042 | lightdesc.intensity = 1; |
| 1043 | |
| 1044 | lightdesc.color = RendererColor(250, 250, 250, 255); |
| 1045 | lightdesc.direction = PxVec3(-4.0f, -5.0f, -3.0f); |
| 1046 | lightdesc.direction.normalizeFast(); |
| 1047 | |
| 1048 | mLights.push_back(renderer->createLight(lightdesc)); |
| 1049 | |
| 1050 | renderer->initTexter(); |
| 1051 | renderer->initScreenquad(); |
| 1052 | |
| 1053 | mDebugRenderer = SAMPLE_NEW(RenderPhysX3Debug)(*renderer, *getAssetManager()); |
| 1054 | |
| 1055 | // Create managed materials |
| 1056 | { |
| 1057 | const PxReal c = 0.75f; |
| 1058 | const PxReal opacity = 1.0f; |
| 1059 | const bool doubleSided = false; |
| 1060 | const PxU32 id = 0xffffffff; |
| 1061 | |
| 1062 | mManagedMaterials[MATERIAL_GREY] = SAMPLE_NEW(RenderMaterial)(*renderer, PxVec3(0.5f, 0.5f, 0.5f), opacity, doubleSided, id, NULL); |
| 1063 | mManagedMaterials[MATERIAL_RED] = SAMPLE_NEW(RenderMaterial)(*renderer, PxVec3(c, 0.0f, 0.0f), opacity, doubleSided, id, NULL); |
| 1064 | mManagedMaterials[MATERIAL_GREEN] = SAMPLE_NEW(RenderMaterial)(*renderer, PxVec3(0.0f, c, 0.0f), opacity, doubleSided, id, NULL); |
| 1065 | mManagedMaterials[MATERIAL_BLUE] = SAMPLE_NEW(RenderMaterial)(*renderer, PxVec3(0.0f, 0.0f, c), opacity, doubleSided, id, NULL); |
| 1066 | mManagedMaterials[MATERIAL_YELLOW] = SAMPLE_NEW(RenderMaterial)(*renderer, PxVec3(c, c, 0.0f), opacity, doubleSided, id, NULL); |
| 1067 | mManagedMaterials[MATERIAL_FLAT] = SAMPLE_NEW(RenderMaterial)(*renderer, PxVec3(0.5f, 0.5f, 0.5f), opacity, doubleSided, id, NULL, true, true); |
| 1068 | } |
| 1069 | |
| 1070 | getNextSample(); |
| 1071 | if (mSample) |
| 1072 | { |
| 1073 | mSample->onInit(false); |
| 1074 | mSample->registerInputEvents(); |
| 1075 | } |
| 1076 | } |
| 1077 | |
| 1078 | void PhysXSampleApplication::onTickPostRender(float dtime) |
| 1079 | { |
no test coverage detected