• 3D物体绘制不见


    1.镜头不对: 物体不在镜头范围内,检查视图矩阵,世界矩阵,投影矩阵.
    2.颜色全黑: 打开光照情况下,MATERIAL全为0, 或,在没有打开光照情况下,颜色值为0,造成全黑.检查当前Material和顶点颜色和纹理颜色.
    3.深度不对: 被已有的深度遮住了.检查当前深度,直接在此渲染前加Clear深度为1.0作测试.
    4.CullMode设置不对: 所有三角形被当作背面剔除了,设为CULL_NONE测试.
    5.3D物件的纹理坐标统统大于1.0,且此时纹理寻址方式为BORDER, 且BORDER被设为黑色,画面全黑.
    6.深度被Clear为0.0,且打开深度测试,绝对什么都画不上,上述3的特例.
    7.COLORWRITE被DISABLE,一级白痴错误.
    8.没有设置或没有正确设置Viewport,常发生于OpenGL.
    9.OpenGL,使用DrawArray或glDrawElements时,没有打开glEnableClientState(GL_VERTEX_ARRAY),此时渲染语句失败,但没有任何错误返回.
    10.DirectX使用XYZRHW顶点模式渲染2D图像时,顶点Z值取0且没有关闭ZBUFFERWRITE,导致情况6.
    11.BeginScene和EndScene中崩溃,但被全局异常函数捕捉到,但异常处理函数没有EndScene,导致EndScene永远不会被调用,结果BeginScene也失败,没有调用BeginScene,没有画面,画面都没更新.
    12.物件太小,而世界坐标体系太大,如设置平面模式glOrtho(0, 1024, 768, 0, 0, 1024); 而物体的坐标都在1.0f以下,物体就太小看不见了.
     13.物体被ZNear和ZFar裁剪掉了,如glOrtho(0, cx, cy, 0, 0, 1); 在离镜头1单位之外的物体全不可见.
  • 相关阅读:
    JavaWeb--基本概念
    启动Tomcat错误:The JRE_HOME environment variable is not defined correctly
    时间管理-1-总有一种情况你经历过
    时间管理
    非对称加密-支付宝 堆成加密
    TreeMap底层实现和原理-红黑树
    @Autowired报错原因分析和4种解决方案!
    布隆过滤器的设计原理
    springboot 日期参数前后台转换问题
    设计模式
  • 原文地址:https://www.cnblogs.com/lancidie/p/2021837.html
Copyright © 2020-2023  润新知