zoukankan      html  css  js  c++  java
  • stage 3d学习笔记

    1. texture不能实例化,要创建一个texture对象,需要调用Context3D实例的createTexture(int, height:int, format:String, optimizeForRenderToTexture:Boolean, streamingLevels:int = 0):flash.display3D.textures:Texture)方法。同样的Program3D也不能实例化,要创建一个Program3D对象,需要调用Context3D实例的setProgram方法。

    2.若要呈现并显示某个场景(在获取 Context3D 对象后),下面是典型的步骤:

    1) 通过调用 configureBackBuffer() 来配置主显示缓冲区属性。

    2) 创建并初始化您的呈现资源,包括:

    l 定义场景几何的顶点和索引缓冲区

    l 用于呈现场景的顶点和像素程序(着色器)

    l 纹理

    3) 呈现帧:

    l 为场景中的一个对象或一组对象设置适当的呈现状态。

    l 调用 drawTriangles() 方法可以呈现一组三角形。

    l 更改下一组对象的呈现状态。

    l 调用 drawTriangles() 可以绘制定义对象的三角形。

    l 重复直至场景全部呈现。

    l 调用 present() 方法可以在舞台上显示呈现的场景。

    1. 3. 在开发阶段,记得设置context3D.enableErrorChecking = true,可以获得更多的错误信息,给调试带来很大的帮助。
    2. 4. drawTriangles()后记得要调用present(),否则看到屏幕还是黑的有木有
    3. 5. setProgramConstantsFromMatrix的第四个参数一定要注意,不然很容易黑屏的有木有
    4. 6. setProgramConstantsFromMatrix的第一个参数的单位是弧度而不是角度,所以想要使视角是90°需要用Math.PI*90/180而不是直接用90°作为参数。
  • 相关阅读:
    luogu P1144 最短路计数
    codevs 1006 等差数列
    luogu P2419 [USACO08JAN]牛大赛Cow Contest
    luogu cogs 选数
    luogu P1186玛丽卡
    leetcode[69]Sqrt(x)
    leetcode[70]Climbing Stairs
    leetcode[71]Simplify Path
    leetcode[72]Edit Distance
    leetcode[73]Set Matrix Zeroes
  • 原文地址:https://www.cnblogs.com/hisiqi/p/3162072.html
Copyright © 2011-2022 走看看