diff --git a/examples/TinyRenderer/TinyRenderer.cpp b/examples/TinyRenderer/TinyRenderer.cpp index 4ea51ebec..4340ce822 100644 --- a/examples/TinyRenderer/TinyRenderer.cpp +++ b/examples/TinyRenderer/TinyRenderer.cpp @@ -213,6 +213,7 @@ TinyRenderObjectData::TinyRenderObjectData(TGAImage& rgbColorBuffer, b3AlignedOb m_lightAmbientCoeff = 0.6; m_lightDiffuseCoeff = 0.35; m_lightSpecularCoeff = 0.05; + } TinyRenderObjectData::TinyRenderObjectData(TGAImage& rgbColorBuffer, b3AlignedObjectArray& depthBuffer, b3AlignedObjectArray* shadowBuffer, b3AlignedObjectArray* segmentationMaskBuffer, int objectIndex, int linkIndex) @@ -254,6 +255,7 @@ TinyRenderObjectData::TinyRenderObjectData(TGAImage& rgbColorBuffer, b3AlignedOb Vec3f center(0, 0, 0); Vec3f up(0, 0, 1); m_lightDirWorld.setValue(0, 0, 0); + m_lightDistance = 10; m_lightColor.setValue(1, 1, 1); m_localScaling.setValue(1, 1, 1); m_modelMatrix = Matrix::identity(); diff --git a/examples/TinyRenderer/main.cpp b/examples/TinyRenderer/main.cpp index fed8c39ca..0cd2e3cb6 100644 --- a/examples/TinyRenderer/main.cpp +++ b/examples/TinyRenderer/main.cpp @@ -56,7 +56,8 @@ void MyKeyboardCallback(int keycode, int state) sOldKeyboardCB(keycode, state); } #include "TinyRenderer.h" -float color2[4] = { 1,0,0,1 }; +#include "our_gl.h" + int main(int argc, char* argv[]) { @@ -108,10 +109,11 @@ int main(int argc, char* argv[]) b3Vector3 pos = b3MakeVector3(0, 0, 0); b3Quaternion orn(0, 0, 0, 1); + float color[4] = {1,1,1,1}; b3Vector3 scaling = b3MakeVector3(1, 1, 1); - //app->m_renderer->registerGraphicsInstance(cubeIndex, pos, orn, color, scaling); - //app->m_renderer->writeTransforms(); + app->m_renderer->registerGraphicsInstance(cubeIndex, pos, orn, color, scaling); + app->m_renderer->writeTransforms(); do { @@ -160,6 +162,15 @@ int main(int argc, char* argv[]) tr.setOrigin(org); tr.getOpenGLMatrix(modelMat); + TinyRender::Vec3f eye(1,1,3); + TinyRender::Vec3f center(0,0,0); + TinyRender::Vec3f up(0,1,0); + + renderData.m_viewMatrix = TinyRender::lookat(eye, center, up); + renderData.m_viewportMatrix = TinyRender::viewport(gWidth/8, gHeight/8, gWidth*3/4, gHeight*3/4); + renderData.m_projectionMatrix = TinyRender::projection(-1.f/(eye-center).norm()); + + for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) @@ -170,6 +181,7 @@ int main(int argc, char* argv[]) } //render the object + float color2[4] = { 1,1,1,1 }; renderData.m_model->setColorRGBA(color2); TinyRenderer::renderObject(renderData);