Example #1
0
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();
}
Example #2
0
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;
}
Example #6
0
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;
}
Example #7
0
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;
}