QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2782|回复: 16

我想学3D游戏开发!请指点!

[复制链接]
发表于 2005-6-17 16:40:08 | 显示全部楼层 |阅读模式
我先说明:我是绝对不会在windowns里开发程序的,因为在我毕业设计答辩时,那些所谓的老师景然因为我的设计是在LINUX的KDE环境开发的!(C++ QT+kdevelop)就不给我'优'.只问我为什么不能在windowns里运行,当时真的气死了!我解释了为什么,但他们不是话"我们都是用windowns的你的设什我们不接受,你下来吧,回去重做!"不知为什么我那么大胆的说"从一开始老师没有指出要在什么系统上运行,我的设计没有问题,我不会重做的"说完我就走了......最后的毕业证是我的同学给我拿回来的!
 楼主| 发表于 2005-6-17 16:53:55 | 显示全部楼层
LINUX更稳定且免费原代码公开。老师是煞笔
回复

使用道具 举报

发表于 2005-6-17 16:56:53 | 显示全部楼层
楼主 其实你不妨这样说:我没有钱来购买windows+vs, 而且就我所知windows和vs都是禁止拷贝的。所以除非老师能多拨给我20000经费,我无法进行windows下的开发。
回复

使用道具 举报

发表于 2005-6-17 18:25:11 | 显示全部楼层
[quote:612bc39726="wsm"]楼主 其实你不妨这样说:我没有钱来购买windows+vs, 而且就我所知windows和vs都是禁止拷贝的。所以除非老师能多拨给我20000经费,我无法进行windows下的开发。[/quote]

有道理……
回复

使用道具 举报

发表于 2005-6-17 18:26:22 | 显示全部楼层
www.gameres.com
www.chinagamedev.net
www.gamedev.net
回复

使用道具 举报

发表于 2005-6-17 18:39:26 | 显示全部楼层
[quote:30bea99e9d="wsm"]楼主 其实你不妨这样说:我没有钱来购买windows+vs, 而且就我所知windows和vs都是禁止拷贝的。所以除非老师能多拨给我20000经费,我无法进行windows下的开发。[/quote]这句话我要收录进FAQ。
回复

使用道具 举报

发表于 2005-6-17 18:43:26 | 显示全部楼层
再赞一句,hobby是好样的。不过以后可以用更适当的方式表现出来,毕竟你要生计,总会受制于人。
回复

使用道具 举报

发表于 2005-6-17 19:29:19 | 显示全部楼层
再赞一句,hobby是好样的。不过以后可以用更适当的方式表现出来,毕竟你要生计,总会受制于人。

对,比如苦笑一下对老师说:“我穷啊,用不起正版的windows和vs……”
回复

使用道具 举报

 楼主| 发表于 2005-6-18 10:53:44 | 显示全部楼层
我很感动啊!原来我的冲动是直得的!由此拿不到毕业证也是直得的
回复

使用道具 举报

发表于 2005-6-18 17:05:49 | 显示全部楼层
老师们用的都是D版的windows及各种应用软件吧,唉,误人子弟呀!
回复

使用道具 举报

发表于 2005-6-18 20:58:31 | 显示全部楼层
拿不到毕业证还值得?!唉……

居然不知道用SDL来开发,还QT啊,QT怎适合做游戏?
回复

使用道具 举报

 楼主| 发表于 2005-6-18 21:17:18 | 显示全部楼层
哦不是的, 我的设计并没有关于游戏的!
做完设什后,没什么做才想开发游戏给自己玩!同时也会共享啦!
我是这方面的新新手!
回复

使用道具 举报

发表于 2005-6-20 16:47:07 | 显示全部楼层
有什么想法就说出来,也许大家一讨论算法也就出来了。
回复

使用道具 举报

 楼主| 发表于 2005-6-24 12:09:31 | 显示全部楼层
现在,多失去了,linux下开发游戏的方向!现在我还在搞计算机图形学,和学opengl.但我不知道在linux用什么开发工具来开发自己3D引擎.我这前用QT+KDEVELOP+C++开发过实用软件.

请大家给一点意见!
也会上网找一些相关的资料!
回复

使用道具 举报

 楼主| 发表于 2005-6-24 12:19:14 | 显示全部楼层

Qt OpenGL三维绘图

OpenGL是为三维绘图提供的标准应用编程接口。

OpenGL处理的仅仅是三维绘图方面,而很少或是根本不提供图形用户界面编程方面的支持。OpenGL*应用程序的用户界面必须由其它工具包创建,比如在X平台下的Motif,
Motif 是开放软件基金会(OSF)于1989年推出的一个图形用户界面系统。由于它融
合了多种图形用户界面产品中的优点,因此得到了 OSF 的所有成员及广大第三方厂商的
广泛支持。目前 Motif 已作为软件产品在 OS/2、Unix、Sys V、OSF/1、VMS、Macinto
sh OS、Ultrix 等48中操作系统平台上实现,并可在PC、工作站、小型机和大型机等各
种计算机系统上运行。
    为了讲清楚 Motif 是什么概念,先讲一下图形用户界面系统的层次结构(详细的知
识大家查阅资料吧,如果都讲太多了,呵呵),一般的图形用户界面系统由六个层次构
成:桌面管理系统、用户模型、窗口模型、显示模型、操作系统、硬件平台。Motif 位
于用户模型层。它建立在 X Window 系统之上,也就是说它以 X Window 系统做显示模
型的窗口模型。
    Motif 由工具箱(Motif Toolkit)、用户界面语言(UIL)、窗口管理程序(MWM)
、风格指南文档(Style Guide)等四部分组成。
    1. Motif Toolkit 是一个具体的 X Toolkit 产品,它包括 Xt Intrinsics、Moti
f 对象元类集合和操纵这个对象元类集合的简便函数等三个部分。
    2. 利用 Motif 开发的应用程序通常可分为两个部分:一部分是有关应用程序界面
的代码;另一部分是关于应用程序具体功能的代码。一般来说,应用程序中这两个部分
是不会相互干扰的。比如说菜单项位置的变动、标图的更换就都不会影响应用程序的功
能。基于上述事实,Motif 引入了用户界面语言来解决用户界面的描述问题。
    3. 象其他窗口管理程序一样,Motif 的窗口管理程序提供了一个对屏幕上的窗口进
行管理的手段,同时它页强化了用户界面视感的一致性。MWM 支持 Motif 风格指南所描
述的各种窗口操作及显示窗口时的各种约定。
    4. Motif 的风格指南以文档的形式说明了在 Motif 环境下开发应用程序时应遵守
的规范。

在Windows平台下的微软基本类库(MFC)——或是在这两种平台下都能使用的Qt。

Qt的OpenGL模块使在Qt应用程序中使用OpenGL变的更加容易。它提供了一个OpenGL的部件类,这个部件类除了打开一个OpenGL显示缓冲,利用这个缓冲使用OpenGL应用编程接口来提供内容外,能像其它Qt部件那样的使用,。

Qt OpenGL模块的运作是一个与平台无关的Qt/C++的包装,这个包装则是和平台有关的GLX、WGL或AGL的C的应用编程接口。 其提供的功能则是和Mark Kilgard的GLUT库极为相似,但是Qt的OpenGL模块还有更多的非OpenGL特有的GUI机能,即它们都是Qt的应用编程接口。

安装
当你在X11中安装Qt时候,配置脚本将会自动检测你的系统上是否已安装了OpenGL的头文件和库,如果已正确安装了,在Qt的库中就会包括Qt OpenGL模块。(如果你的OpenGL头文件或库放置在一个非标准的目录下,你需要根据你的系统而修改config文件中的SYSCONF_CXXFLAGS_OPENGL和/或 SYSCONF_LFLAGS_OPENGL)。 对于OpenGL的一些配置需要线程生效,所以如果OpenGL没有被检测到,试一下configure -thread。

当你在Windows中安装Qt时候,Qt的OpenGL模块总是被包含的。

Qt的OpenGL模块的使用没有授权给Qt专业版,如需要OpenGL支持的话,可以考虑升级为Qt企业版。

在X11上使用Mesa时请注意: Mesa 3.1之前的版本在库中使用的名为“MesaGL”和“MesaGLU”,而不是“GL”和“GLU”。如果你想使用Mesa 3.1之前的版本的话,你必须改变Makefile来使用这些库的名字。最简单的方法就是编辑config文件中的SYSCONF_LIBS_OPENGL行,将“-lGL -lGLU”改成“-lMesaGL -lMesaGLU”,然后再次运行“configure”。



Qt&Kdevelop技巧集(原创)也有提到OPENGL
1. 如何在Qt程序中加入OpenGL支持。
在QT程序中加入OpenGL支持很简单,只需要在Kdevelop连接的库中加入“-lGL -lGLU”即可,如果需要glut支持,还可以加入“-lglut”。具体操作是在kdevelop集成编译环境中按下”F7”,在弹出的对话框中选择“Linker”一项,在输入栏输入你想添加的库即可,写法与gcc/g++一致。
一般在类QGLWidget中使用OpenGL,调用此类的头文件是qgl.h,具体写法请参考qt例程中的gear,texture,box等程序(在RedHat7.2中,它们在/usr/lib/qt-2.3.1/doc/examples下).

2. 检验linux/Unix环境是否支持OpenGL.
Qt中的QGLFormat类可以帮助我们轻易检验系统是否支持OpenGL,载入头文件(#include <qgl.h>)后,我们就可以使用QGLFormat的静态函数hasOpenGL来检验,具体写法如下例:
if (!QGLFormat::hasOpenGL())   //Test OpenGL Environment
{
  qWarning( "This system has no OpenGL support. Exiting." );//弹出警告对话框
  return -1;
}
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-11-5 19:42 , Processed in 0.089707 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表