随笔分类 - Away3D
摘要:一直以来很多Stage3D开发者都在为3D模型在2DUI上显示的问题头疼。Stage3D一直是在 Stage2D下面。为了做到3D模型在2DUI上显示通常大家有几种实现方式,下面来说说这几种实现方式吧。实现方式1: 在2DUI上挖个洞透过去显示3D层。这种做法的缺陷在于如果两个UI界面同时打开...
阅读全文
摘要:之前在项目中贴图大量使用了 PNG 和 jpg 遇到了个问题。在使用BitmapTexture的时候发现 是必须MIP 不管你 是否开启或者关闭 MIP 他都会去创建。而每次MIP都会根据贴图大小去生成不同级别的 材质 比如说 512 * 512 映射的结果是 256 * 256 、128 * ...
阅读全文
摘要:最近在改Away3D源码的时候遇到个很郁闷的问题,发现创建的Mesh 释放不掉。分析源码发现 EntityListItemPool 类中逻辑Bug在getItem()函数中发现_poolSize 对象池大小如果够用的情况下 它采用的方式是复用EntityListItem那么假设我删除了场景上有10个...
阅读全文
摘要:带着上次的疑问我们继续探讨Away3D 的渲染流程。在Away3D中所有的显示对象都是继承Object3D 的我们先看看显示对象和继承关系。Object3D |---ObjectContainer3D (3D显示容器) |---Entity (所有的3D实体对象的抽象基类) ...
阅读全文
摘要:View3D 顾名思义 它就是一个3D视口,视口的默认值是无穷大的,即相当于“窗口”是无限大的,我们看到的将是外面的所有景物即flash尺寸是视口的有效视域.传统电视的高宽比为4:3,现在的高清电视的高宽比为16:9,你也可以如此这般地去设置。它是一个Sprite 的子类。主要用于创建 3D场景 相...
阅读全文
摘要:很多朋友说Away3D 的骨骼数限制在32根,确切的说应该是Stage3D 的限制。在 AGAL2.0之前 VC寄存器是128个,每个vc常量寄存器最大只能容纳4位,transform占用一个4*4的矩阵,所以如果把一个transform存进vc里面,需要到4个寄存器才能存得完。这样,一根骨骼占...
阅读全文
摘要:骨骼的绑定归根结底就是将目标骨骼的位置以及旋转数据,同步给要绑定的显示对象。先来看BindingTag.aspackage away3d.entities{import away3d.arcane;import away3d.animators.SkeletonAnimator;import away3d.animators.data.JointPose;import away3d.containers.ObjectContainer3D;use namespace arcanepublic class BindingTag extends ObjectContainer3D{private
阅读全文

浙公网安备 33010602011771号