Tag Archives: 3D

用 Babylon.js 和 JavaScript 写 3D 游戏——从入门到精通(2)

上一章节,我们学习了如何用babylonjs来创建一个简单的场景,我们最终得到了一个颇为美丽的结果:有棋盘格的地面,一个玻璃球体,我们可以自由的旋转他们,并且也能看到一点光线的效果。 只不过,整个过程充满了晦涩的代码和一些不明所以的参数,好像懂了又好像完全不懂。为了能够更好的进入3D的世界,我们在这一章节需要把所有需要了解的 API 和基础知识进行一些讲解,以便后面更好地了解和深入我们的知识体系。… Read More »

用 Babylon.js 和 JavaScript 写 3D 游戏——从入门到精通(1)

OK,我们可以正式开始了,在此之前,我们先看看我们最终能获得的游戏成品应该是个什么东西,这样可以让我们对将来的编码之旅提升信心。 海王星中某处正在秘密研究制作宇宙中最强、最冷血的生化战士以便征服地球,强是一位星际货柜车的驾驶在宇宙中跑单,某日认识伙伴麦克和辛蒂二人,在同时也得罪了货运站中最强最有势力的公司,急需离开太空货运站的强在地下货运站中接了一批急件送往地球的诡异货物,途中经过小行星陨石区遭受… Read More »

用 Babylon.js 和 JavaScript 写 3D 游戏——从入门到精通(0)

为什么又开坑 整个博客静寂了2年,最近服务器提示快要过期了,想着不希望年少时期的文字就这么消失,一口气续费了5年。支付完了又有些懊恼,不能这样了啊,这个费用不能浪费了。 于是乎,新坑来了,这回我们使用JavaScript来做游戏了。 实际上,pygame系列为本博客带来了不少流量,但是平时工作学习中,python的使用只占据我5%不到编码量。当然这并不是因为Python有什么不好,只是这些年所在的… Read More »

用PyOpenGL叩开3D的心扉——OpenGL全解析(5)

我不得不演示几个例子来加深一下之前学习的东西(时隔这么久了,有点难以为继的感觉啊)~ 我恨数学 据说这个世界上最深沉的感情不是爱而是恨,或许一开始就亮出一个数学函数能让你有动力进行下去? from OpenGL.GL import * from OpenGL.GLU import * from OpenGL.GLUT import * #from numpy import * import sys… Read More »

用PyOpenGL叩开3D的心扉——OpenGL全解析(4)

图元 上一次,我们有了一个足够3D的程序了,虽然很漂亮,但是那个茶壶并不是我们画出来的,glut带给我们的便利而已。从现在开始我们就得自己动手丰衣足食了,为了达到这一点,我们得再了解一些OpenGL的一些知识。 如右图所示,你必须知道构成我们3D图像的最小单位,它们往往被称为图元。 点,在OpenGL中,这是最基本的图元,比如说图中红色的那个点。 线,比如左图中粉色的那根。我们可以看到,两个点定一… Read More »

用PyOpenGL叩开3D的心扉——OpenGL全解析(2)

每个人都有做3D的潜质 看看这张图片(选自“一秒钟看穿统计陷阱”),美国木匠的平均收入是罗坦提亚木匠的两倍,给出一张统计图片,美国人的钱袋长、高都是罗坦提亚木匠的两倍,看起来挺忠实于数据。 但是右边钱袋实际占用的面积就是左边的4倍。这幅图像导致的暗示效果其实还没完,因为在生活中钱袋都是立体的,所以每个读者看到这个钱袋的时候会不经意地给它加上一个厚度,这样一来,在有些人眼里这幅图表达的明明是美国木匠… Read More »

用PyOpenGL叩开3D的心扉——OpenGL全解析(1)

承 从pygame的系列教程里3D部分,本想好好说一下OpenGL的,但是感觉这样一来就喧宾夺主了,毕竟OpenGL这东西,好好说明下来要比pygame更加博大精深,所以就考虑另外起一个教程来写着了。如今pygame的说明基本完成,实战篇完成两个以后,第三个写起来实在太占时间了,只好退居二线新开这个pyopengl教程作为主要的更新内容。 说实话我不知道这次会写多久,能写的如何,我只能保证自己极力… Read More »

用Python和Pygame写游戏-从入门到精通(目录)

目光博客一开始,就有一个将pygame好好介绍一遍的宏伟计划,历时四个月,在各位朋友的关怀鞭策下,如今(2011/8/26)理论学习的部分似乎已经都完成了,在次列一个目录,方便查询。介绍还不是很全,下次有时间补充完整一些。 python.cn也有一个目录在这里,这个系列很多流量都是来自它,表示感谢。 系统学习部分 用Python和Pygame写游戏-从入门到精通(1) Pygame的历史,安装Py… Read More »

Android中使用OpenGL ES的一二事

这个世界,不来点3D感觉都对不起祖宗历代啊,如火如荼的Android上,没有一点3D开发,怎么能说的过去呢?俗气的试了一回……然后发现还真有不少问题,记录一下。 初学者遇到的最大问题,就是贴图在模拟器上跑的好好的,在真机上就是一片片的雪白(如果你的默认渲染色是白色的话),然后崩溃啊吐血啊,调试来调试去,恨不得把手中的破手机摔了再买一个(很容易怀疑到自己的手机上),不过在你这么做之前,先看一下有没有… Read More »

用Python和Pygame写游戏-从入门到精通(19)

3D世界 让我们现在开始写一个3D的程序,巩固一下这几次学习的东西。因为我们还没有好好深入如何画3D物体,暂时就先用最简单的投影(上次讨论过的第二种)方法来画吧。这个程序画一个空间里的立方体,只不过各个部分并不会随着距离而产生大小上的变化。 您可以看到,很多的小球构成了立方体的各个边,通过按住方向键,可以水平或垂直方向的更改“摄像头”的位置,Q和A键会把摄像头拉近或拉远,而W和S会改变视距,绿色的… Read More »

用Python和Pygame写游戏-从入门到精通(18)

3D是非常酷的技术,同时也就意味着更多的工作,上次的简单介绍之后,这次还要讲更多2D到3D的新概念。 基于时间的三维移动 我们使用Vector3类来进行3D上的移动,与2D非常类似,看下面一个例子: 直升机A在(-6, 2, 2)的位置上,目标是直升机B(7, 5, 10),A想摧毁B,所以发射了一枚火箭AB,现在我们得把火箭的运动轨迹过程给画出来,否则一点发射敌机就炸了,多没意思啊~~ 通过计算… Read More »

用Python和Pygame写游戏-从入门到精通(17)

最近有些忙,没有更新这个系列,不行啊不行,抓紧更新一篇,这几次可是3D啊3D,多么诱人的词啊…… 游戏通常希望营造一个真实的世界,越接近真实越好啊,这样的代入感会很强。在早期,由于硬件的限制,游戏只能提供一些2D的图像,因为这对于电脑绘图是最容易的。还好随着技术发展,现在的显卡已经可以画出很逼真的3D画面了,所以“硬件杀手”游戏层出不穷,贫困游戏迷的噩梦啊。 在开开心心的继续之前,是不是有记忆力好… Read More »