读书人

[转] MoleHill操作AGAL的Helper种之一

发布时间: 2012-12-21 12:03:49 作者: rapoo

[转] MoleHill操作AGAL的Helper类之一

本帖最后由 sleep2death 于 2011-4-20 16:49 编辑


应7yue大大的要求,贴写小东西.



如何使用呢?

先用helper设置一些属性:
AGALHelper.setVertexConstant("c_a1", Vector.<Number>([1.025]));
AGALHelper.setAttribute("a_vb", vertexBuffer));
然后写汇编
AGALHelper.addVertexCode("mov", "t_vb", "a_vb");
AGALHelper.addVertexCode("mov", "t_uvb", "a_uvb");
AGALHelper.addVertexCode("mov", "t_nb", "a_nb");

AGALHelper.addVertexCode("sub", "t_v3Ray", "t_vb", "c_v3CameraPos.xyz");
AGALHelper.addVertexCode("len", "t_fFar.xyz", "t_v3Ray");


AGALHelper.addVertexCode("m44", "op", "t_vb", "c_proj");

AGALHelper.addVertexCode("mov", "v_uvb", "t_uvb");
AGALHelper.addVertexCode("mov", "v_nb", "t_nb");

AGALHelper.addFragmentCode("mov", "t_uvb", "v_uvb");
AGALHelper.addFragmentCode("tex", "t_day", "t_uvb", "s_day", "<2d, clamp, linear>");
AGALHelper.addFragmentCode("mov", "oc", "t_day");

AGALHelper.printCode();
AGALHelper.uploadCode();

好处是你再也不要去记ft0, fc1到底是啥了...另外可以新增一些方法,比如length等等

读书人网 >编程

热点推荐