X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fmodel3d-view%2Fmodel3d-view-impl.cpp;h=5e6340fc6938d55b79e2a913b582fb254fa872fb;hb=ef5357cfd908303f109e1e0b0648e8997efe1a2f;hp=75af67016aaca2008d6222b8ea6aecaaf1adbee1;hpb=a2de9cf491172cd5da9dc9ed60b17683dab6d7bc;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/controls/model3d-view/model3d-view-impl.cpp b/dali-toolkit/internal/controls/model3d-view/model3d-view-impl.cpp index 75af670..5e6340f 100644 --- a/dali-toolkit/internal/controls/model3d-view/model3d-view-impl.cpp +++ b/dali-toolkit/internal/controls/model3d-view/model3d-view-impl.cpp @@ -448,7 +448,7 @@ void Model3dView::OnInitialize() { //Create empty versions of the geometry and material so we always have a Renderer Geometry mesh = Geometry::New(); - Shader shader = Shader::New( SIMPLE_VERTEX_SHADER, SIMPLE_FRAGMENT_SHADER, (Shader::ShaderHints)(Shader::HINT_REQUIRES_SELF_DEPTH_TEST | Shader::HINT_MODIFIES_GEOMETRY) ); + Shader shader = Shader::New( SIMPLE_VERTEX_SHADER, SIMPLE_FRAGMENT_SHADER ); mRenderer = Renderer::New( mesh, shader ); } @@ -525,6 +525,7 @@ void Model3dView::CreateGeometry() if( mRenderer ) { mRenderer.SetGeometry( mMesh ); + mRenderer.SetProperty( Renderer::Property::DEPTH_WRITE_MODE, Renderer::DEPTH_WRITE_ON ); } } } @@ -553,24 +554,24 @@ void Model3dView::UpdateShaderUniforms() void Model3dView::CreateMaterial() { - if( mObjLoader.IsMaterialLoaded() && (mTexture0Url != "")) + if( mObjLoader.IsMaterialLoaded() && (mTexture0Url != "") && mObjLoader.IsTexturePresent() ) { - if( (mTexture2Url != "") && (mTexture1Url != "") && (mIlluminationType == Toolkit::Model3dView::DIFFUSE_WITH_NORMAL_MAP)) + if( (mTexture2Url != "") && (mTexture1Url != "") && (mIlluminationType == Toolkit::Model3dView::DIFFUSE_WITH_NORMAL_MAP) && mObjLoader.IsNormalMapPresent() ) { - mShader = Shader::New( NRMMAP_VERTEX_SHADER, NRMMAP_FRAGMENT_SHADER, (Shader::ShaderHints)(Shader::HINT_REQUIRES_SELF_DEPTH_TEST | Shader::HINT_MODIFIES_GEOMETRY) ); + mShader = Shader::New( NRMMAP_VERTEX_SHADER, NRMMAP_FRAGMENT_SHADER ); } - else if(mIlluminationType == Toolkit::Model3dView::DIFFUSE_WITH_TEXTURE) + else if( mIlluminationType == Toolkit::Model3dView::DIFFUSE_WITH_TEXTURE ) { - mShader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER, (Shader::ShaderHints)(Shader::HINT_REQUIRES_SELF_DEPTH_TEST | Shader::HINT_MODIFIES_GEOMETRY) ); + mShader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER ); } else { - mShader = Shader::New( SIMPLE_VERTEX_SHADER, SIMPLE_FRAGMENT_SHADER, (Shader::ShaderHints)(Shader::HINT_REQUIRES_SELF_DEPTH_TEST | Shader::HINT_MODIFIES_GEOMETRY) ); + mShader = Shader::New( SIMPLE_VERTEX_SHADER, SIMPLE_FRAGMENT_SHADER ); } } else { - mShader = Shader::New( SIMPLE_VERTEX_SHADER, SIMPLE_FRAGMENT_SHADER, (Shader::ShaderHints)(Shader::HINT_REQUIRES_SELF_DEPTH_TEST | Shader::HINT_MODIFIES_GEOMETRY) ); + mShader = Shader::New( SIMPLE_VERTEX_SHADER, SIMPLE_FRAGMENT_SHADER ); } mTextureSet = TextureSet::New(); @@ -579,7 +580,7 @@ void Model3dView::CreateMaterial() { mRenderer.SetTextures( mTextureSet ); mRenderer.SetShader( mShader ); - mRenderer.SetProperty( Renderer::Property::FACE_CULLING_MODE, Renderer::NONE); + mRenderer.SetProperty( Renderer::Property::FACE_CULLING_MODE, Renderer::CULL_NONE); } UpdateShaderUniforms();