`
lovehui0228
  • 浏览: 101359 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

关于Android纹理映射

阅读更多

首先发泄一下不满,Android应用开发揭秘这都什么烂书啊,讲又没讲清,又不给代码,要不是Android书太少,我也不会浪费钱去买机械工业出版社的书,里面一个纹理映射,给一串天书一样的代码,整了一下午时间~~~

 

解释一下纹理映射,就是往物体上贴图,android集成了OpenGL,以方便3D开发,如果大家对怎么进行纹理映射一头雾水,那可以看下下面的代码,也许有点用:

 

private FloatBuffer vertexBuffer = FloatBuffer.wrap(new float[]{
			-ONE, -ONE, ONE, 
    		ONE, -ONE, ONE,  
    		-ONE, ONE, ONE,  
    		ONE, ONE, ONE,   
    		
    		ONE, -ONE, ONE,		
    		ONE, -ONE, -ONE,    	
    		ONE, ONE, ONE,   
    		ONE, ONE, -ONE,
    		
    		ONE, -ONE, -ONE,
    		-ONE, -ONE, -ONE,    		
    		ONE, ONE, -ONE,
    		-ONE, ONE, -ONE,
    		
    		-ONE, -ONE, -ONE,	
    		-ONE, -ONE, ONE,    		
    		-ONE, ONE, -ONE,	
    		-ONE, ONE, ONE,		
    		
    		-ONE, -ONE, -ONE,	
    		ONE, -ONE, -ONE,    		
    		-ONE, -ONE, ONE,	
    		ONE, -ONE, ONE,		
    		
    		-ONE, ONE, ONE,		
    		ONE, ONE, ONE,    	
    		-ONE, ONE, -ONE,	
    		ONE, ONE, -ONE,		
	});
	
	private FloatBuffer textureBuffer = FloatBuffer.wrap(new float[]{
			ZERO, ZERO,
    		ZERO, ONE,
    		ONE, ZERO,
    		ONE, ONE, 
    		
    		ZERO, ONE,
    		ONE, ONE,
    		ZERO, ZERO,
    		ONE, ZERO,
    		
    		ZERO, ZERO,
    		ZERO, ONE,
    		ONE, ZERO,
    		ONE, ONE,
    		
    		ONE, ZERO,
    		ONE, ONE,
    		ZERO, ZERO,
    		ZERO, ONE,
    		
    		ZERO, ONE,
    		ONE, ONE,
    		ZERO, ZERO,
    		ONE, ZERO,
    		
    		ONE, ZERO,
    		ONE, ONE,
    		ZERO, ZERO,
    		ZERO, ONE,
    		
	});

 

 

这样写应该很明了吧,那本烂书上把第二个数组分6行,一行8个,谁能想到是这样的对应方法呢?

简而言之,两个数组每一行都是一个点,分别对应,画下图就清楚了,第一个是三维物体,第二个是二维贴图~~~

2
1
分享到:
评论
5 楼 解未知数 2011-05-01  
这本书OpenGL ES部分真不咋地,不过总比没有好.
我是一个没有OpenGL基础的人,看的很费劲...
我就不抱怨了,因为我的是PDF,哈哈.....
本来打算买实体书的,我看还是算了,等着有好的外国翻译书再说咯....
4 楼 Simdanfeg 2011-03-18  
其实个人认为这本书还是不错,只是有些小细节的确做的不太好,“简而言之,两个数组每一行都是一个点,分别对应,画下图就清楚了,第一个是三维物体,第二个是二维贴图~~~”这一句对作者来说算不了什么,但对刚接触的opengl的人来说可真是醍醐灌顶。。。。。。
3 楼 sayyanfu 2010-10-25  
3Dmax导出的格式可以在android上用吗?
2 楼 lovehui0228 2010-07-05  
yarin 写道
朋友,你好:
     首先感谢你对<Android应用开发揭秘>的反馈,对于你提出的问题,我这里需要说明一下:
1:"讲又没讲清"??
这个问题比较难以回答,可能会和个人情况有一些关系吧.从我们收集的大量数据来看,有很多读者甚至连java都还不熟悉(从其他方向刚刚转到Android的),看了本书,都说能够理解,浅显易容,难道就真的是你所所的本书没讲清除吗?
2:"又不给代码"??
至于代码,从最初的华章和乎动网,到现在的很多网站,随便一搜索,到处都是,为什么会到处都是呢?那说明代码同样对一些开发者有帮助,才会到处传开吧,一份没用的东西,,谁会去传播.唯一就是没有采用光盘的方式隋书代码,我想这样做原因很多吧,说大点儿就是环保嘛,说小点儿,在和光盘达到同样的效果下,降低成本把,更多的是Android系统更新过快,我们将代码放在网上也可以随时随着版本进行更新,以便解决旧版本的代码不能运行等问题吧.好处应该不比采用光盘少哦.
3:"把第二个数组分6行,一行8个"??
这个问题,是排版的关系吗?还是每个人都有自己的风格呢?或许说是编译器的某些自动格式化代码(比如Eclipse的自动排版功能),这些都会改变程序风格和排版把,相信你自己也有你自己的风格吧.这里我们也不去讨论谁的风格好与坏,一本书的好与坏在于能否帮助到读者,如果因为这个排版不符合你个人的风格,就说本书烂,我想有些武断吧.

这里没有别的什么意思,我们只是对每一位读者反馈的信息进行收集,并给于解答与说明,我们更欢迎你到华章网站\各大网上书店\本书QQqun\作者以及本书编辑的博客进行交流,提出你的疑问,我们尽可能的给与解答.

谢谢!

额,说这本书烂确实有些武断,不过这本书确实是不够好~~~
学Andorid没必要对java有多熟悉,了解基本的语法也就够了(java真正高深的东西也由于JVM和DELVIK的不兼容性难以得到施展吧),对于一些很基本的内容确实是浅显易懂的,这个大部分的书都是可以做到这一点的,但像本文这样的问题没有相关经验的人想通过这本书来弄懂这样的问题还是相当困难的吧.所以说基本问题上浅显易懂,复杂问题上很多都没有讲清~~~
那个数组我想不是风格的问题吧,他可以有他的风格,但是如果风格变化可以让程序更易理解的话,再好的风格也是应该舍弃的吧~~~
个人见解,也许是我对书比较挑剔的缘故~~~
1 楼 yarin 2010-07-05  
朋友,你好:
     首先感谢你对<Android应用开发揭秘>的反馈,对于你提出的问题,我这里需要说明一下:
1:"讲又没讲清"??
这个问题比较难以回答,可能会和个人情况有一些关系吧.从我们收集的大量数据来看,有很多读者甚至连java都还不熟悉(从其他方向刚刚转到Android的),看了本书,都说能够理解,浅显易容,难道就真的是你所所的本书没讲清除吗?
2:"又不给代码"??
至于代码,从最初的华章和乎动网,到现在的很多网站,随便一搜索,到处都是,为什么会到处都是呢?那说明代码同样对一些开发者有帮助,才会到处传开吧,一份没用的东西,,谁会去传播.唯一就是没有采用光盘的方式隋书代码,我想这样做原因很多吧,说大点儿就是环保嘛,说小点儿,在和光盘达到同样的效果下,降低成本把,更多的是Android系统更新过快,我们将代码放在网上也可以随时随着版本进行更新,以便解决旧版本的代码不能运行等问题吧.好处应该不比采用光盘少哦.
3:"把第二个数组分6行,一行8个"??
这个问题,是排版的关系吗?还是每个人都有自己的风格呢?或许说是编译器的某些自动格式化代码(比如Eclipse的自动排版功能),这些都会改变程序风格和排版把,相信你自己也有你自己的风格吧.这里我们也不去讨论谁的风格好与坏,一本书的好与坏在于能否帮助到读者,如果因为这个排版不符合你个人的风格,就说本书烂,我想有些武断吧.

这里没有别的什么意思,我们只是对每一位读者反馈的信息进行收集,并给于解答与说明,我们更欢迎你到华章网站\各大网上书店\本书QQqun\作者以及本书编辑的博客进行交流,提出你的疑问,我们尽可能的给与解答.

谢谢!

相关推荐

    基于Android平台的纹理映射方法研究.pdf

    【Android平台的纹理映射方法研究】 纹理映射是Android应用开发中用于增强三维图形表现力的关键技术。它通过将图像、函数或其他数据源映射到三维物体表面,赋予其丰富的外观特征。在Android系统中,尤其是在游戏和...

    基于Android平台的纹理映射分析与实现.docx

    【基于Android平台的纹理映射分析与实现】 纹理映射是计算机图形学中的一种关键技术,特别是在3D图形渲染中,它允许将图像或其他数据源应用到物体表面,以增加视觉的真实感。在Android平台上,这一技术主要依赖于...

    android OpenGL ES 地球仪绘制——球体绘制及纹理映射——源码

    支持如下: (1)opengl es绘制三角形拼成球体 (2)图片作为纹理映射到整个球面上 (3)双点触控缩放球体 (4)拖动旋转球体

    Android OpenGL实现立方体多纹理图片映射

    本教程将深入探讨如何使用OpenGL ES在Android中实现立方体的多纹理映射以及混色光照效果,这对于游戏开发、虚拟现实应用以及其他需要动态图形的场景至关重要。 首先,我们需要了解纹理映射的概念。纹理映射是将2D...

    Android多媒体开发13-纹理映射.ppt

    在Android多媒体开发中,纹理映射是实现图形与图像效果的重要技术。纹理映射允许我们将二维图像(纹理)应用到三维模型或者二维图形上,从而增加视觉的真实感和细节。在OpenGL ES中,这是通过在渲染过程中指定纹理...

    android opengl 纹理贴图

    这个过程涉及到多个关键步骤和技术,包括纹理坐标、纹理单元、纹理对象的创建以及纹理映射等。 首先,我们要理解什么是纹理贴图。纹理贴图是将二维图像(纹理)应用到三维模型表面的技术,使得模型看起来更加真实和...

    Android OpenGL 纹理贴图

    本文将深入探讨如何在Android应用程序中使用OpenGL ES进行纹理贴图,这是构建复杂图形场景的关键技术。 纹理贴图是将图像数据(通常是一个二维数组)应用到3D模型表面的过程,使得模型表面具有丰富的视觉效果。在...

    Android代码-OpenGL3D立方体多纹理贴图源码.zip

    3. **纹理映射**:纹理映射是将2D图像(纹理)应用到3D物体表面的技术,增加了视觉的真实感。OpenGL使用纹理坐标来指定每个顶点对应的纹理位置。通过加载纹理图像文件(如.jpg或.png),创建纹理对象,绑定纹理,...

Global site tag (gtag.js) - Google Analytics