FerryMan Fractal渲染的第一张3DS图片

 对于光线追踪场景中的任何物体,只要有了求交算法以及法线算法就可以渲染。

virtual   int  intersect( const  Ray &  ray,  float &  distance )  =   0 ;
virtual  Vector3 getNormal(Vector3 &  pos)  =   0 ;

为了适应三角形带的渲染,把三角形的数据结构定义为:

Vector3 vertex[3];
Vector3 normal[3];

由于暂时还不考虑支持贴图,光线追踪插件在读入3DS文件的时候只处理了顶点数据(0x4110)和面数据(0x4120)。目前对法线的计算是根据三角形所在面来确定的,并没有考虑临近三角形的影响。所以渲染出来的图显得很生硬。接下来的工作就是重新计算三个顶点的法线数据,另外优化速度。

 


本文属Span Zhang(张友邦)原创,转载请注明出处。

中国原创分形艺术、中国原创分形软件第一站

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值