摘要:
一直以来很多Stage3D开发者都在为3D模型在2DUI上显示的问题头疼。Stage3D一直是在 Stage2D下面。为了做到3D模型在2DUI上显示通常大家有几种实现方式,下面来说说这几种实现方式吧。实现方式1: 在2DUI上挖个洞透过去显示3D层。这种做法的缺陷在于如果两个UI界面同时打开... 阅读全文
摘要:
写了很多年的AS3,最近接触U3D感觉事件机制没AS3的爽。咬紧牙关一鼓作气 基于C# 的委托实现了一版。废话不多说上干货。EventDispatcher代码如下:using UnityEngine;using System.Collections;using System;using Syst... 阅读全文
摘要:
AA(Anti-Aliasing)抗锯齿想必不少玩家在游戏画质设定中经常会遇到,说通俗一点AA抗锯齿的作用:将图像边缘及其两侧的像素颜色进行混 合,然后用新生成的具有混合特性的点来替换原来位置上... AA(Anti-Aliasing)抗锯齿想必不少玩家在游戏画质设定中经常会遇到,说通俗一点AA抗... 阅读全文
摘要:
透视投影的原理和实现 摘要:透视投影是3D渲染的基本概念,也是3D程序设计的基础。掌握透视投影的原理对于深入理解其他3D渲染管线具有重要作用。本文详细介绍了透视投影的原理和算法实现,包括透视投影的标准模型、一般模型和屏幕坐标变换等,并通过VC实现了一个演示程序。1概述在计算机三维图像中,投影可以看作... 阅读全文
摘要:
之前在项目中贴图大量使用了 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个寄存器才能存得完。这样,一根骨骼占... 阅读全文
摘要:
OBJ文件是Alias|Wavefront公司为它的一套基于工作站的3D建模和动画软件"Advanced Visualizer"开发的一种标准3D模型文件格式,很适合用于3D软件模型之间的互导,也可以通过Maya读写。比如你在3dsMax或LightWave中建了一个模型,想把它调到Maya里面渲染或动画,导出OBJ文件就是一种很好的选择。目前几乎所有知名的3D软件都支持OBJ文件的读写,不过其中很多需要通过插件才能实现。OBJ文件是一种文本文件,可以直接用写字板打开进行查看和编辑修改。另外,有一种与此相关二进制文件格式(*.MOD),其作为专利未公开,因此这里不作讨论。1 阅读全文