Scratch作品简介
3D点渲染模板
---
声明
cyc原创
要用请在作品中写明出处
严禁带出社区!!!(我在几乎所有大社区都有号的)
---
原理(及其简单)
1,摄像机与渲染点坐标相减,算出相对坐标
2,乘上cos x\y或sin x\y(原理就不细讲了)
3,用x=x\z,y=y\z算出x及y坐标(是不是超级简单/二哈)
4,乘上视野
5,用√(tx-x)^2+(ty-y)^2+(tz-z)^2算出距离并保存至列表等待排序
6,x及y坐标同样保存至列表等待排序
7,利用时间复杂度为O(2n)的计数排序(超级快),对距离进行排序
8,按照距离将距离对应的x及y坐标排序
9,由视野\距离(√(tx-x)^2+(ty-y)^2+(tz-z)^2)得到点的大小
10,按倒序逐个渲染
---
优点
1,整体程序较简单,方便理解及编辑
2,遮挡关系理论来说,在可视范围内不会发生错乱
3,由于计数排序的特点,增加渲染点所增加的运行内存及时间很少
---
缺点
1,算法空间复杂度很大
2,不支持线及面的渲染
3,不能达到高清渲染(画笔扩展的缺陷)
我很菜的