摘要: 最近在导入下载的.OBJ文件,有时会出现只有模型而没有材质渲染的情况。难道材质要自己一点一点重新赋予?抓狂……我知道.OBJ文件用来存储模型信息,观察第一行代码,可以看到材质库文件为mtllib ####.mtl刚开始打开.mtl文件时,根本不明白其中存储的什么信息。百度了一下,发现有一篇前人翻译的.mtl文件格式的文章感谢新浪博主 牛魔公主 ——————————————事后的分割线—————————————————虽然看懂了,可是这么重新复原也不太可行。后来发现,在导入max时,导入对话框中手动添加材质库,即该.MTL文件名(大部分能恢复正常,仍有小部分不能正常渲染)———————————— 阅读全文
posted @ 2013-11-19 16:41 回眸笑苍生 阅读(5677) 评论(0) 推荐(1) 编辑
摘要: 自定的事件可以利用Event元标签在支持该事件的类里面做绑定,绑定后FlashBuilder会有代码提示,以提示该类支持的事件类型12345678910111213141516package view{import flash.events.EventDispatcher;import flash.events.IEventDispatcher;[Event(name="all_resource_complete", type="events.TEvent")][Event(name="iso&q 阅读全文
posted @ 2013-11-19 10:55 回眸笑苍生 阅读(265) 评论(0) 推荐(0) 编辑
摘要: OBJ是文件,先来解释下OBJ文件。随便找一个OBJ文件,用文本查看:?1234567891011121314151617181920212223# Max2Obj Version 4.0 Mar 10th, 2001## object (null) to come ...#v -0.257 0.191 0.423v -0.115 0.29 -0.068v -0.237 0 -0.074v -0.237 0.071 0.646...# 82 verticesvt 0.623 0.227 0vt 0.615 0.53 0vt 0.895 0.555 0vt 0.825 0.246 0vt 0.6 阅读全文
posted @ 2013-11-19 10:53 回眸笑苍生 阅读(425) 评论(0) 推荐(0) 编辑
摘要: 骨骼的绑定归根结底就是将目标骨骼的位置以及旋转数据,同步给要绑定的显示对象。先来看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 阅读全文
posted @ 2013-11-19 10:50 回眸笑苍生 阅读(814) 评论(0) 推荐(0) 编辑
摘要: package com.copper.isometric.pathing{import flash.sampler.startSampling;/*** A*中用于开放列表的 二叉堆* @author vanCopper**/public class BinaryHeap{private var struct:Array = [-1];private var compareFunc:Function = function (x:Object,y:Object):Boolean{if(y == null)return true;return x > 1;while(parent >= 阅读全文
posted @ 2013-11-19 10:47 回眸笑苍生 阅读(287) 评论(0) 推荐(0) 编辑
摘要: AS3中 Sprite和Shape类都持有一个Graphics对象,利用Graphics对象可以方便的利用内置的绘图方法绘制一些简单的图形。之前在游戏中做新手引导的时候利用显示对象的BlendMode可以实现一个镂空的光圈引导,后来看到有人用Graphics连续画两个形状就实现了。package{import flash.display.Sprite;/*** * @author vanCopper*/public class Ts extends Sprite{public function Ts(){var sw:int = this.stage.stageWidth;var sh:int 阅读全文
posted @ 2013-11-19 10:46 回眸笑苍生 阅读(356) 评论(0) 推荐(0) 编辑
摘要: 为框架添加了一套新的与C++通讯的数据协议,其中和C++的大爷们对于他们的64位数字(unsigned long long)读写的问题纠结了很久。真心觉得“学好C++走遍天下都不怕啊”AS里Number最大支持53整数位,所以AS里面是没有办法表示超过53位的整数的,所以这里的读写64数字只是在数字大小不超过53位的情况下可用。从字节流读出64数字:1234567891011var long_h:uint;var long_l:uint;//C++传过来的数据包是打过pack的 所以字节流里 低位在前long_l = byteArray.readUnsignedInt();long_h = b 阅读全文
posted @ 2013-11-19 10:45 回眸笑苍生 阅读(432) 评论(0) 推荐(0) 编辑
摘要: 前面已经了解了一些Stage3D的基础与工作原理,今天我准备继续深入了解下隐藏于Stage3D API背后的神秘代码 AGAL。 废话不多说直接进入主题,老规矩先搞清楚什么是AGAL? AGAL是干什么的? AGAL(Adobe Graphics Assembly Language)是Adobe开发的图形汇编语言,汇编语言是仅高于计算机二进制机器码的低级语言,可以精确地操控机器硬件比如可编程显卡,PC的Dirext9、MAC的OpenGL以及移动设备中的OpenGL ES 2都是可编程显卡,并且都支持AGAL。通过Adobe官方提供的编译器AGALMiniAssembler(实际上是一... 阅读全文
posted @ 2013-06-13 10:52 回眸笑苍生 阅读(466) 评论(0) 推荐(0) 编辑
摘要: 前面已经学习了“常见的3D显像术语”与“常见的3D编码术语”。今天所要探讨的是Molehill。什么是Molehill: Molehill是Adobe官方预计推出的一套底层3D渲染引擎,该引擎能够调用GPU,借助GPU强大的浮点运算能力实现开创新的Flash3D技术。 2010年10月,Adobe在MAX大会中公布了关于Flash Player的新项目,名为Molehill的新API集可以让开发者借助GPU大幅提升Flash的3D渲染能力。目前现有的Flash Player 10.1可以在30Hz下渲染几千个非Z缓冲三角形,使用Molehill和图形芯片则可以在60Hz左右的高分辨率显... 阅读全文
posted @ 2013-06-12 02:52 回眸笑苍生 阅读(381) 评论(0) 推荐(0) 编辑
摘要: Adobe的Stage3D技术已经出来很长时间了。一直忙于工作零零散散的学习了一些,最近在工作中也遇到了不少Stage3D的技术问。所以决定从今天起系统化的学习Stage3D.在学习Stage3D技术前首先需要了解下“常见的3D显像术语”与“常见的3D编码术语”。常见的3D显像术语:网格(Mesh) 3D世界中的模型被称做网格。这些网格使用 3DMAX、Maya 或者其他3D建模软件制作出来的,它们定义了一个物体的3D形状,以及用于绘制它所需的颜色。3D游戏中的主角就是这样由一个或者多个独立网格所组成的网格模型,而一个完整的游戏场景就是由数百个网格模型所构成的。多边形(Polygon) ... 阅读全文
posted @ 2013-06-12 01:51 回眸笑苍生 阅读(377) 评论(0) 推荐(0) 编辑