Away3D 基础5 - 3D基本元素(3)

(2012-01-07 旧博文搬运)[away3d]Segment与LineSegment的区别 away3d中有2种线段: away3d.core.base.Segment和away3d.primitives.LineSegment   前者属于一种构成mesh(面)的基本要素,后者只则是只包含一条segment的mesh,如果混淆很容易出现问题   今天做一个点+线段构成的立方体,我开始打算建一个mesh,里面用mesh.addSprite()来添加8个Sprite3d类表示的顶 阅读详情

这是关于3D基本元素的第三篇教程也是最后一篇。在这篇里要介绍的是我们不常用到的。GridPlane和LineSegment用于调试,然而Cone, Torus 和SeaTurtle更是“非必备品”了。

这篇教程里介绍过的3D基本元素也存在于别的3D引擎或模型包里。由于不常用,本教程里没有像前两节里那样丰富的实例。不过这里还是提供了能展现其用法的代码

先决条件

本教程建立在我们别的教程基础之上。假如你是flash3D菜鸟,你可能会先要去看看这些教程。举个例子,有些源文件,点击附带的as文件查看它们是如何工作的。所有这些例子都要用到一个Cover.as文件。这个文件是让教程里用到的flash影片不能同时工作,否则会拖垮你的电脑。如果你不确定如何使用这些例子,查看这个教程。

教程里的一部分例子会用到“纹理”。关于纹理与材质我们会在后边教程详细介绍,如果要让代码在flash cs3里工作, 读这个教程.

 

The Cone

圆锥用处不大。做冰淇淋甜筒、锥形交通标和宴会帽等效果时可能会用到。圆锥有radius、segmentsH、segmentsW和height属性,另外一个属性用于指明是否开口,如果设为开口,我们就可以从圆锥底看到圆锥内部。

Swf:点击观看as: Basic08_cone.as

在本例展示了几种可能.下载源文件,看看各类属性如何设置。

The Cylinder

圆柱体与圆锥提供的属性大多相同,看下例:

Swf:点击观看as: Basic08_cylinder.as

圆柱体可能要比圆锥有用的多,不过用它要付出“昂贵”的代价。记得winxp经典屏保—管道实时渲染吗?这个看上去很容易实现,但实际上用3D引擎很难实现这个效果。像前面的例子里看到的那样,要让一个3D元素显示的很“圆”就需要大量的三角形,圆柱体也不例外。回顾历史我们不难发现在游戏里大量使用“圆形表面”还只是近几年的事。

The GeodesicSphere

A Geodesic sphere is most commonly referred to as a Geodesic Dome. It's been used in building construction (see Spaceship Earth at Epcot) and has some unique properties when compared to a traditional Sphere primitive. In Away3D the Geodesic Sphere starts off with a basic shape that looks like 2 pyramids combined. This shape is then refined by triangulating each of the triangles in the basic shape to approximate a sphere.

The higher amount of triangulation, the more round the sphere will appear. In the image below, the fracture setting is noted next to each sphere so you can see how this affects the roundness of the sphere.

  

as: Basic08_geodesicsphere_refine.as

As you see from the image, this is a quite different way to build the sphere than with a normal sphere primitive. The triangles are almost the same size across the object and this makes a GeodesicSphere more round than a sphere, given the same number of triangles. Mouse over the example below to see how the two compare.

Swf:点击观看as: Basic08_geodesicsphere.as

It is also possible to create a Geodesic sphere based on other primitives as this code shows.

The RoundedCube

圆角立方体只在Away3D引擎里有。最简单的圆角立方体看上去就像个球。通过增加三角形面数可以得到更佳的效果

点此去浏览Fabrice Closier的博客。Fabrice是Away3D开发团队里核心成员。

这个基本元素还是最近在用户的要求下添加的。假如你需要一种Away3D里还没有的3D元素,你可以试图在away3D论坛里发帖。论坛会员就有可能去开发这个元素,当然如果你也有开发能力也欢迎您把代码投稿到away3D引擎。

 

 

The Wire primitives

 

 

Several of the primitives are also available in Wireframe version. They have no surface so you can see the mesh they consist of.

A final note

As said initially, these primitives have very limited use and some of them even contain bugs. While working on this tutorial, I've added these bugs to the issue list for Away3D. Most notably - the cone and geodesic sphere has texture issues, the cylinder becomes too long if you use more than one segment. The issues are reported to the team and will probably be fixed swiftly, but I'm adding it here as a "nice to know" thing.

The GridPlane

网格平面这个3D元素用于辅助建立场景。它只是带网格的平面,但它成为大多3D程序里必备部分是有原因的。看下面模型。

Swf:点击观看 as: Basic08_gridplane.as  image: seaturtle.jpg

如上添加了三叉戟与网格后,你对该场景个位置情况一目了然。

The Torus

圆环存在于大多3D工具里。它可用于油炸圈饼、救生圈。同时这个也用于测试阴影。应用模拟光反射、阴影于旋转的圆环上,圆环看上去效果很不错。

Swf:点击观看 movie: Basic08_torus.as, images: doughnut.jpg mandelbrot.jpg marble.jpg

注意圆环不用segmentsW 和segmentsH设置,取而代之的是segmentsR 和 segmentsT:

 torus.segmentsR = 20;torus.segmentsT = 10;

The LineSegment

像下面例子一样,有时候我们只需要在两点间画一根线。在away3D里提供了”线段“元素。把鼠标移到下面影片上,我们可以看到一根线段始总连着”海龟“

Swf:点击观看as:Basic08_linesegment.as, image: seaturtle.jpg

 

The SeaTurtle

This was the first output of the as3 exporter, a class that can generate a compact AS3 class based on any loaded model. This class has since been updated a lot and it's very powerful. If you want a compact 3D project, you should consider testing how the AS3 exporter can improve both file size and load times. While not really a primitive, the Sea Turtle was a fun addition and a bit of a mascot in the early days of Away3D. Since it's kind of complex and has a lot of faces, it is also useful for testing lighting. The texture for the turtle is located in the "/techdemos/images/" folder that you can download from the Away3D subversion repository. You'll see it in use in the next primitive - the GridPlane.

GAMES104:02引擎架构分层-学习笔记 用户层工具层(Tool Layer):编辑器、工具界面功能层(Function Layer):渲染Rendering、动画Animation、物理Physics、相机Camera和实现游戏性的脚本Script、状态机FSM、AI等功能模块资源层(Resource Layer):各类图片、动画、音频资源加载核心层(Core Layer):核心功能如内存管理、容器分配、数据计算、多线程处理等平台层(Platform Layer):对接不同游戏平台、主机和硬件。 阅读详情

相关推荐

达梦数据库与sharding-jdbc的深度适配实践

本文详细介绍了达梦数据库与sharding-jdbc的深度适配实践,包括驱动与依赖管理、核心适配实现、注册与配置等关键步骤。通过扩展shardingSphere的方式,成功实现了达梦数据库的分库分表功能,并提供了常见问题解决方案和性能优化建议,助力企业级应用高效处理海量数据。

weixin_30300225的博客 623

解决AWAY3D的SegmentSet失效问题

SegmentSet对象的中心点一旦被鼠标移动到屏幕之外,那么整个对象都不会被渲染了,从屏幕中消失了。 为此,只能将线对象改变成cylinder圆柱体对象。非常可惜,圆柱体对象是没有两端端点的坐标属性的,所以需要封装一个方法出来控制圆柱体的旋转和移动

老胡的ACTIONSCRIPT3 822

CMU的local_planner学习笔记

ros::Subscriber subOdometry = nh.subscribe//当接收到/state_estimation话题消息更新时启动odometryHandler回调函数 (消息格式:nav_msgs::Odometry消息内容:关于机器人或车辆的位置和方向(姿态)信息)pcl::PointCloud::Ptr freePaths(new pcl::PointCloud());

qq_35971623的博客 3877

Away3D--------------关于太阳(光晕和上帝之光)的表现

一. 太阳光晕概述

新撰组 2357

Android存储方案对比(SharedPreferences 、 MMKV 、 DataStore)

简介:本文介绍了Android开发中常用的键值对存储方案,包括SharedPreferences、MMKV和DataStore,并且对比了它们在性能、并发处理、易用性和稳定性上的特点。通过实际代码示例,帮助开发者根据项目需求选择最适合的存储方案,提升应用性能和用户体验。

LiuYong_01的博客 1786

影像技术实战02:FFmpeg 镜头切分误检、漏检问题排查与基于场景变化的稳定分镜方案

本文介绍了基于FFmpeg的镜头切分技术在实际应用中的常见问题及解决方案。文章首先指出单纯使用select='gt(scene,0.4)'命令进行镜头检测存在误检、漏检等问题,包括黑场、字幕变化被误判为镜头切换,以及相似场景切换被漏检等情况。随后提出了一套四层架构的稳定解决方案:1)用FFmpeg提取候选镜头变化点;2)解析变化点时间和分数;3)通过后处理过滤异常点;4)按时间点切割视频片段并生成报告。文中详细展示了Python实现代码,包括场景点检测、时间间隔过滤等功能模块,为视频剪辑、影视解说等场景提供

ai技术增长的博客 400

AWAY3D 水滴和水波效果 超真实 超炫 水面效果 水面建模

利用3d max和away3d,实现了一个非常逼真的水滴/水波效果。鼠标移动视角,R键随机生成水滴,按住R键可以有下雨效果

weixin_34406061的博客 256

【调优】OpenClaw从零开始高阶调优之skill篇

本文详细解析了OpenClaw技能系统的核心机制。首先介绍了技能的分层加载逻辑,按照优先级从高到低依次为:工作区专属技能、全局共享技能、出厂自带技能和自定义路径技能。通过流程图展示了从扫描到注册的完整加载流程,并解释了同名技能覆盖规则。随后深入剖析了SKILL.md文件结构,包含YAML元数据定义技能属性和Markdown正文说明使用方法,以公众号写作技能为例展示了具体配置。文章还提供了技能优先级切换的实用技巧,帮助用户灵活管理不同版本的技能。

海兰 239

Away3D4.0入门教程

好吧,我知道有很多人不会有兴趣一点点把教程全看完,所以,我先在这帖子里集中发布一些基础的,但大家又非常关心的问题, 至于具体细节怎么实现,我会在以后的教程中慢慢完善,这里仅是为了提供给那些有一定动手能力的兄弟们自己先丰衣足食.... 1.怎么为一个Mesh设置各个不同部位的皮肤? 调用Mesh的subMeshes,但前提是你的Mesh里有SubMesh... mesh.subMes

Zszen John 的 Blog 3179

ThingsBoard集群部署之k8s

今天终于有时间去搞这个啦,拖了很久了,一直没时间,因为我本地没有那么多机器资源,开虚拟机不够,如果租用阿里云服务器,需要有充值的时间,因为这个费用是按小时付费,需要有连贯的时间来搞才行,今天恰好有时间,就开始搞了,弄成功搞出来了,特地写博客记录下来。

AldrichEugene 1174

故障诊断 | CNN-BiGRU-Attention故障诊断

故障诊断 | CNN-BiGRU-Attention故障诊断

机器学习之心的博客,关注并私信文章链接,获取对应文章源码和数据。 673

Away3D基础5-3D基本元素(1)

原文地址:http://www.flashmagazine.com/Tutorials/detail/away3d_basics_5_-_primitives_part_1/ 在大多数3D软件中,3D基本元素是构成3D世界的基石。Away3D自带有17种3D基本元素以及一些别的帮助物。本教程将解释如何用这些3D基本元素实现非常酷的效果,比如音乐波形条、CMYK颜色分离等等。本教程同时会...

dnukjz5627的博客 146

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Flex 4+Away3D环境配置

前一段时间学习Flash Builder 4和Away3D,做了一些小程序,在这对Flash Builder 4和Away3D做一点小总结,为了以后再使用,提供些资料。         一、Flash Builder 4简介: Flash Builder 4 简称Flex 4,是Adobe公司的软件,编程语言是AS3和HTML,AS3和HTML显示了完美兼容,html可以调用AS3,AS3也可

恋上蛋炒面的专栏 2331

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Away3D 基础5 - 3D基本元素(2)

本教程,我们继续探讨简单却有用的3D基本元素。我们还将学到如何用旋转镜头、sphere及skybox 3D基本元素来创建全景图。并会了解一个可以帮我们创建全景图的软件。 这篇教程,我们先讲述两个3D基本元素,然后看一些可以用于创建全景图的3D基本元素。 先决条件 本教程建立在我们别的教程基础之上。假如你是flash3D菜鸟,你可能会先要去看看这些教程。举个例子,有些源文件,点击附带...

dnukjz5627的博客 157

Away3d基础 3 -摄像机

原英文地址:http://www.flashmagazine.com/Tutorials/detail/away3d_basics_the_cameras/ 相机camera类是观察3D世界必须借助的工具.其作用与现实世界里的相机一样,3D世界里的照相机应用通视原理将3D物进行缩放、聚焦、定位等。在本教程中你将会学到away3d里的三种类型的"相机" 无论你想在Away3D里做什...

dnukjz5627的博客 245

away3D基础6-颜色材质

在前面的教程里我们已经接触到材质。这篇教程将探讨如何使用一些基本的材质:color materials, phong shader 和lighting 为3D元素添加颜色与线框材质会让3D元素更有三维的感觉。本教程要解释的是在流行的3D引擎away3D里的一些基础的颜色材质的使用。 先决条件 本教程建立在我们别的教程基础之上。假如你是flash3D菜鸟,你可能会先要去看看这些教程。...

dnukjz5627的博客 217

Flash 3D引擎Away3D完全指南:从零搭建你的第一个3D世界(入门必读)

Away3D 是一款免费开源的 Flash 3D 引擎,专为 Flash Player 11 的 Stage3D 硬件加速接口打造,让你在浏览器中就能构建真实的三维场景。本指南面向零基础新手,带你认识 Away3D Flash 3D 引擎的核心概念,并用不到 20 行代码搭建出你的第一个 3D 世界,最后附上功能地图与常见坑位提示,是入门必读的完整教程。 ## 一、认识 Away3D:免费开源的

gitblog_00003的博客 701

Away3D-3 含有动画的模型的加载与设置

1 package 2 { 3 import away3d.textures.*; 4 import away3d.tools.helpers.*; 5 import away3d.animators.data.*; 6 import away3d.animators.nodes.*; 7 import...

TCTC5840865的博客 315

Away3D 开源3D引擎项目推荐

Away3D 开源3D引擎项目推荐 1. 项目基础介绍和主要编程语言 Away3D 是一个开源的实时3D引擎,专为 OpenFL 平台开发。该项目的主要编程语言是 Haxe,Haxe 是一种跨平台的编程语言,能够编译成多种目标语言,如 JavaScript、C++、Java、C# 等。Away3D 通过 Haxe 实现了跨平台的支持,使得开发者可以在多个平台上运行他们的3D应用程序。 2. 项目的...

gitblog_00743的博客 431

Away3d基础 3 -相机

http://blog.youkuaiyun.com/nooon/article/details/4139625 原英文地址:http://www.flashmagazine.com/Tutorials/detail/away3d_basics_the_cameras/相机camera类是观察3D世界必须借助的工具.其作用与现实世界里的相机一样,3D世界里的照相机应用通视原理将3D物进行缩放、聚焦、定位等。在

anderberte 791
上一篇: Away3D 基础5 - 3D基本元素(2)
下一篇: Away3D学习笔记2--3D世界的坐标系
jamesjun
博客等级 码龄19年 25粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值