OculusHud::OculusHud() : post_unwarp(true), handler(*this) { InitialiseOculus(); InitialiseFramebuffer(); InitialiseShader(); // Make this the default fullscreen view DisplayBase().AddDisplay(*this); SetBounds(Attach::Pix(0),Attach::Pix(HMD.VResolution),Attach::Pix(0),Attach::Pix(HMD.HResolution)); handler.SetHandler(&pangolin::StaticHandler); View::SetHandler(&handler); // Initialise per-eye views / parameters for(int i=0; i<2; ++i) { int hw = HMD.HResolution/2; eyeview[i].SetBounds(Attach::Pix(0),Attach::Pix(HMD.VResolution),Attach::Pix(i*hw),Attach::Pix((1+i)*hw)); this->AddDisplay(eyeview[i]); } // Setup default projection parameters const OVR::Util::Render::DistortionConfig& Distortion = stereo.GetDistortionConfig(); const float ppos = HMD.HResolution * Distortion.XCenterOffset / 4.0f; SetParams(204.4, ppos, 0.177, -0.083); common.SetHandler(&pangolin::StaticHandler); this->AddDisplay(common); T_oc = IdentityMatrix(); pangolin::SetFullscreen(); }
bool FogFX::Initialise(ID3D11Device* device, HWND hwnd){ bool result; result = InitialiseShader(device, hwnd, L"DX11 Framework.fx"); if (!result) return false; return true; }
//Initialise Shader Function bool CParticleShader::Initialise(ID3D11Device* device, HWND hwnd) { bool result; string VSFilepath = "../AtlasEngine/" + m_VSFilename; string PSFilepath = "../AtlasEngine/" + m_PSFilename; string GSFilepath = "../AtlasEngine/" + m_GSFilename; //Initialise Vertex and Pixel Shaders result = InitialiseShader(device, hwnd, VSFilepath.c_str(), PSFilepath.c_str(), GSFilepath.c_str()); if (!result) { return false; } return true; }
bool Assignment6::Init() { if(!D3DApp::Init()) { return false; } md3dImmediateContext->IASetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY::D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST); m_Quad.initialiseBuffers(md3dDevice); auto shader = InitialiseShader(L"SphereBowl.fx"); m_Quad.setShader(shader); BuildVertexLayout(shader); md3dImmediateContext->IASetInputLayout(mInputLayout); return true; }
bool Assignment5::Init() { if(!D3DApp::Init()) { return false; } m_Box.initialise(md3dDevice); ID3DX11Effect* shader = InitialiseShader(L"Textured.fx"); m_Box.setShader(shader); m_Phone.setShader(shader); BuildVertexLayout(shader); m_Box.constructVertexBuffer(md3dDevice); m_Box.constructIndexBuffer(md3dDevice); m_Phone.initialise(md3dDevice); md3dImmediateContext->IASetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY::D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST); md3dImmediateContext->IASetInputLayout(mInputLayout); m_Box.setTransform(XMMatrixRotationRollPitchYaw(22.2f, 45.0f, 45.0f) * XMMatrixTranslation(0.0f, 0.0f, 2.0f)); return true; }
bool CRenderSystemGL::InitRenderSystem() { m_bVSync = false; m_bVsyncInit = false; m_maxTextureSize = 2048; m_renderCaps = 0; // Get the GL version number m_RenderVersionMajor = 0; m_RenderVersionMinor = 0; const char* ver = (const char*)glGetString(GL_VERSION); if (ver != 0) { sscanf(ver, "%d.%d", &m_RenderVersionMajor, &m_RenderVersionMinor); m_RenderVersion = ver; } m_RenderExtensions = " "; if (m_RenderVersionMajor > 3 || (m_RenderVersionMajor == 3 && m_RenderVersionMinor >= 2)) { GLint n; glGetIntegerv(GL_NUM_EXTENSIONS, &n); if (n > 0) { GLint i; for (i = 0; i < n; i++) { m_RenderExtensions += (const char*)glGetStringi(GL_EXTENSIONS, i); m_RenderExtensions += " "; } } } else { m_RenderExtensions += (const char*) glGetString(GL_EXTENSIONS); } m_RenderExtensions += " "; if (IsExtSupported("GL_ARB_shading_language_100")) { ver = (const char*)glGetString(GL_SHADING_LANGUAGE_VERSION); if (ver) { sscanf(ver, "%d.%d", &m_glslMajor, &m_glslMinor); } else { m_glslMajor = 1; m_glslMinor = 0; } } LogGraphicsInfo(); // Get our driver vendor and renderer const char* tmpVendor = (const char*) glGetString(GL_VENDOR); m_RenderVendor.clear(); if (tmpVendor != NULL) m_RenderVendor = tmpVendor; const char* tmpRenderer = (const char*) glGetString(GL_RENDERER); m_RenderRenderer.clear(); if (tmpRenderer != NULL) m_RenderRenderer = tmpRenderer; // grab our capabilities if (IsExtSupported("GL_EXT_texture_compression_s3tc")) m_renderCaps |= RENDER_CAPS_DXT; if (IsExtSupported("GL_ARB_texture_non_power_of_two")) { m_renderCaps |= RENDER_CAPS_NPOT; if (m_renderCaps & RENDER_CAPS_DXT) m_renderCaps |= RENDER_CAPS_DXT_NPOT; } //Check OpenGL quirks and revert m_renderCaps as needed CheckOpenGLQuirks(); m_bRenderCreated = true; if (m_RenderVersionMajor > 3 || (m_RenderVersionMajor == 3 && m_RenderVersionMinor >= 2)) { glGenVertexArrays(1, &m_vertexArray); glBindVertexArray(m_vertexArray); } InitialiseShader(); return true; }
bool CRenderSystemGL::InitRenderSystem() { m_bVSync = false; m_bVsyncInit = false; m_maxTextureSize = 2048; // Get the GL version number m_RenderVersionMajor = 0; m_RenderVersionMinor = 0; const char* ver = (const char*)glGetString(GL_VERSION); if (ver != 0) { sscanf(ver, "%d.%d", &m_RenderVersionMajor, &m_RenderVersionMinor); m_RenderVersion = ver; } m_RenderExtensions = " "; if (m_RenderVersionMajor > 3 || (m_RenderVersionMajor == 3 && m_RenderVersionMinor >= 2)) { GLint n; glGetIntegerv(GL_NUM_EXTENSIONS, &n); if (n > 0) { GLint i; for (i = 0; i < n; i++) { m_RenderExtensions += (const char*)glGetStringi(GL_EXTENSIONS, i); m_RenderExtensions += " "; } } } else { m_RenderExtensions += (const char*) glGetString(GL_EXTENSIONS); } m_RenderExtensions += " "; ver = (const char*)glGetString(GL_SHADING_LANGUAGE_VERSION); if (ver) { sscanf(ver, "%d.%d", &m_glslMajor, &m_glslMinor); } else { m_glslMajor = 1; m_glslMinor = 0; } LogGraphicsInfo(); // Get our driver vendor and renderer const char* tmpVendor = (const char*) glGetString(GL_VENDOR); m_RenderVendor.clear(); if (tmpVendor != NULL) m_RenderVendor = tmpVendor; const char* tmpRenderer = (const char*) glGetString(GL_RENDERER); m_RenderRenderer.clear(); if (tmpRenderer != NULL) m_RenderRenderer = tmpRenderer; m_bRenderCreated = true; if (m_RenderVersionMajor > 3 || (m_RenderVersionMajor == 3 && m_RenderVersionMinor >= 2)) { glGenVertexArrays(1, &m_vertexArray); glBindVertexArray(m_vertexArray); } InitialiseShader(); if (IsExtSupported("GL_ARB_texture_non_power_of_two")) m_supportsNPOT = true; else m_supportsNPOT = false; return true; }
void TextureShader::Initialise(ID3D11Device* device, HWND hwnd) { InitialiseShader(device, hwnd, L"../WaveSim/light.vs", L"../WaveSim/light.ps"); return; }