查看: 4696|回复: 4
打印 上一主题 下一主题

away3d的贴图原理

[复制链接]

435

主题

2

听众

6371

积分

高级设计师

Rank: 6Rank: 6

纳金币
6372
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2012-9-4 10:41:48 |只看该作者 |倒序浏览
我正在做这样一个东西,在球体的表面,贴上多张图片,如四张图片,其实很简单,如果你明白它的贴图原理。
away3d空间中的最小单位是Face(surface的简称),也就是一个三角形Triangle(但是Face和Triangle分别是两个不同的类),每一个模型(sphere,cube等)都是由很多
个Face组成的。Face中最重要的内容是:
(1)三个x,y,z坐标的点a(x1,y1,z1),b(x2,y2,z2),c(x3,y3,z3),这三个点决定了三角形在三维空间中的位置;
(2)三个U,V坐标的点(u1,v1),(u2,v2),(u3,v3),这三个坐标是二维平面上的坐标,范围是0~1,决定了三角形的贴图信息。如果要给三角形贴上一个长为w,宽为h的图
片,那么,空间中的点(x1,y1,z1)就对应着图片上(u1*w,v1*h)这个点,同理其他两个点也是如此,所以贴图时,只是把图片上(u1*w,v1*h),(u2*w,v2*h),
(u3*w,v3*h) 这三个点围起来的三角形的颜色值完全拷贝出来绘制到三维空间的那个目标三角形上。


明白了这个道理。要给球体贴4张图,有两个办法,如下:
1.取出组成球体的所有三角形,改变每个三角形的材质和uv坐标即可。假设4张图要贴在球体上,我们假设四张图组成一张大图globeImg,球体上每个三角形的uv是相对于这张大图globeImg的,所以只要改变uv的值为相对于4张小图就可以。例如某一点的uv为(0.75,0.70),经过计算,假设经过计算这个点对应于第3张小图,那么改变后的uv就是(0.25,0.20),其他两个点同理,再把这个三角形的材质改为第3张图就可以。 要注意的问题是,有可能三角形的3个点不在同一张小图上,遇到这种情况就要自己处理(把三角形再分割,或者其他方法)。
2.知道球体的投影算法,把四张小图以某种方法进行分割,分割成连续的三角形集合,并对每个三角形进行球体投影(即把平面上的uv坐标投影成球体上的某一点(x,y,z)),成为三维空间的一个三角形(有uv,有x,y,z坐标,有材质),绘制这些三角形。属于同一张小图上的三角形的材质就是这张小图。要注意的问题是:每个三角形的uv值是相对于小图片的,而进行球体投影时要把uv转换成相对于整张地图的x,y坐标值,再进行球体投影。-------->因为我最终要实现的是B/S模式的球体地图,所以最终采用了这种方法。
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

0

主题

2

听众

3238

积分

中级设计师

Rank: 5Rank: 5

纳金币
0
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2014-7-10 10:56:12 |只看该作者
谢谢分享!
回复

使用道具 举报

0

主题

0

听众

20

积分

设计初学者

Rank: 1

纳金币
1
精华
0
板凳
发表于 2014-9-22 15:16:14 |只看该作者
qweqwq1111111
回复

使用道具 举报

418

主题

21

听众

7923

积分

管理员

Rank: 9Rank: 9Rank: 9

纳金币
7448
精华
30

活跃会员 优秀版主 荣誉管理 论坛元老 周年庆

地板
发表于 2014-10-30 20:51:07 |只看该作者
教程不错。
回复

使用道具 举报

icon    

0

主题

1

听众

110

积分

设计实习生

Rank: 2

纳金币
2
精华
0

最佳新人

5#
发表于 2015-1-23 10:41:07 |只看该作者

pstatus"> 本帖最后由 比巴卜 于 2013-10-28 08:57 编辑

lash AS3制作个性的旋转圆形网页导航,最终效果如下。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-13 17:29 , Processed in 0.231443 second(s), 32 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部