平面设计入门:淺\談遊戲程式設計入門 - [進階篇]

Show Me Demo 讓我們把焦點轉回遊戲程設核心工作上:也就是 Graphics API — DirectGraphics 與 OpenGL 學習上無論是學習何種 API開始免不了都是需要熟記很多很多函式名稱、呼叫方式、傳入參數等等繁複東西然後還需要把整個繪圖 API 程式設計流程架構從頭到尾徹底瞭解;在學習 API 時很重要件事就是要用心去研究繪圖 ... [阅读全文]

编程初学者:游戏编程起源(初学者)Ⅵ

☆ 关闭你应用(关闭窗口)有 3个消息看起来差不多都是处理关闭事情它们是WM_DESTROYWM_CLOSE和WM_QUIT它们确很相似但你需要知道它们的间区别!个窗口或者应用应该被关闭时发出WM_CLOSE消息当接收到WM_CLOSE消息时如果你愿意向用户提出是否真退出你知道让用户作确认或有出现或有什么应该注意事情发生时候往往弹出个消息框消息框制作是很容易... [阅读全文]

编程初学者:游戏编程起源(初学者)Ⅶ

★ 第 4章 DirectX入门☆ 介绍啊哈!今天是个好日子知道为什么吗?今天我们要接触到令人敬畏DirectX它比Windows GDI要快好几倍可用于区别语言和多种平台支持从绘制象素到高级3D图象从播放简单声音到数字音乐从键盘控制到反震手柄……它给你游戏编程所需切(有点夸张)当然了它是巨大需要好几本书才能含盖它全部先不要去担心我在这里所教给你的外数不清知... [阅读全文]

编程初学者:游戏编程起源(初学者)Ⅷ

☆ 设置协作等级和显示模式我不需要说太多Windows编程设置协作级别你只需要IDirectDraw7::SetCooperativeLevel;设置显示模式你就IDirectDraw7::SetDisplayMode就这么简单!先来看看协作级别这就是原形:HRESULT SetCooperativeLevel(HWND hWnd,DWORD dwFlags... [阅读全文]

编程初学者:游戏编程起源(初学者)Ⅸ

★ 第 5章 DirectDraw调色板和象素☆ 介绍今天我们将分别使用调色板和RGB模式来熟悉DirectDraw基本图形它们有什么区别呢?如果你曾经在DOS下编程你可能使用过调色板映射模式调色板是个颜色查询表为了绘制象素你将个单独字节写入视频内存通过这个字节你可以索引到个拥有各种颜色链表这个颜色链表或查询表就叫作调色板而RGB模式是区别它不需要颜色查询表... [阅读全文]

编程初学者:游戏编程起源(初学者)Ⅹ

☆ 锁定表面没什么令人意外东东我们将使用是IDirectDrawSurface7::Lock让我们仔细看看它:HRESULT Lock(LPRECT lpDestRect,LPDDSURFACEDESC lpDDSurfaceDesc,DWORD dwFlags,HANDLE hEvent);定要检测是否成功否则可能会有大麻烦:如果锁定失败而返回指针指向了个... [阅读全文]

编程初学者:游戏编程起源(初学者)ⅩⅠ

★ DirectDraw位图化图形☆ 介绍终于你已经掌握了制作个完整游戏基础知识了只不过你现在还只能使用GDI今天我们就学习使用DirectX来执行每件你以前用GDI完成工作以及些有关DirectX其它东东具体内容是:装载()位图使用位块传输填充表面使用剪裁板、颜色键等拷贝位图你可以在不了解前章内容基础上学习本章但象素格式是很重要我将经常直接或间接提到它所以... [阅读全文]

编程初学者:游戏编程起源(初学者)Ⅳ

☆ 串表串表是我最喜欢资源类型正象你所想:个充满串庞大表格串表有很多用处你可以用它存储你文件名称游戏中人物对话消息框中文本菜单中文本等等在资源脚本里建立个串表很容易就像这样:STRINGTABLE{// entries go here}个串表由几部分组成:个标识串数字;紧跟着个逗号;然后是加了双引号串本身串表里串被允许使用溢出符号如或 注意串表本身并没有标识... [阅读全文]

编程初学者:游戏编程起源(初学者)Ⅴ

★第 3章 跟踪你窗口和使用GDI☆ 介绍如果你看过了头两章你或许已经在问我什么时候能给你讲点有成就感东东呢?OK时候到了这次我们将学习WINDOWS GDI(图形设备接口)和其它些相关东西象响应用户输入和处理Windows产生些消息至于显示图形我们将接触 3个课题:文本显示绘制象素显示位图我们先来研究下几个Windows消息细节重复话:你需要C语言基础知识... [阅读全文]

编程初学者:游戏编程起源(初学者)Ⅲ

★ 第 2章 使用Win32资源☆ 介绍欢迎继续收看!通过本章题目可能你已经猜出了本章论题我将教会你在Windows中使用资源简单讲资源即数据它们通常是和EXE文件相关联但是它们又是独无 2首先资源在运行过程中不能被修改它们实际上都是只读文件而且代码不能够直接访问它们另外资源并不在数据区内在装入时资源通常在某个磁盘文件中直到需要它们时才被装入使用资源是件很容... [阅读全文]

角色扮演游戏引擎的设计原理

角色扮演游戏(RPG)是深受广大游戏迷们喜爱种游戏, 它以独特互动性和故事性吸引了无数玩家它向人们提供了超出现实生活广阔虚拟世界使人们能够尝试扮演区别角色去经历和体验各种区别人生旅程或奇幻经历这些体验都是在现实生活中无法实现在玩过许多游戏后许多玩家都不再仅仅满足于个游戏玩家身份而会研究游戏是如何制作并且打算制作个自己游戏网上各种游戏制作小组更是如雨后春笋般涌... [阅读全文]

斜二视图:斜视角视图( 2)

( 现在开始我们绘制时候我将把图形块用 /\\ 来表示)( \\/ )如果你稍微研究下这个形状你就会发现他们可以很容易摆在起画完个图形块时向右走16个象素向下走8个元素再画下个于是个如此绘制完屏幕就象下图所示:+-----------+|/\\/\\ ||\\/\\/\\ ||/\\/\\/\\ ||\\/\\/\\/\\ ||/\\/\\/\\/\\ ||\\/\\/\\/\\/\\ ||/\\... [阅读全文]

斜二视图:斜视角视图( 3)

现在我们得定义图片块样子草地是最容易就是个画着草图案16x15图形块墙是个16x50图形块既然我们用叠放思路方法绘制高墙就是两个墙个比另个要高因此现在我们这样将数据放入我们地图:(图形块0 = 草图形块1 = 墙)map[0][0].num = 2;map[0][0].tile[0] = 1;map[0][0].height[0] = 0;map[0][0].tile[1] = 1;map[0][... [阅读全文]

斜二视图:斜视角视图( 4)

我们现在有了我们预步进坐标当我们准备用mx和my来从地图中绘制图形块时我们向左移动prestep_x个象素点向上移动prestep_y个象素点OK我们现在得到了个平滑滚动可以考虑加入精灵问题了你不能用这个技术绘制个精灵他们不可能排布在个16x16地图内个精灵可能会被别绘制图形块覆盖所以我们需要是能够在任意坐标位置上绘制我们精灵我们所要做就是给我们引擎加入能在层上绘图能力这里加入个图形块绘制顺序你首... [阅读全文]

winmain函数:C++源代码游戏编程--WinMain()函数集

C源代码游戏编程--WinMain交流//******************************************************************//:WinMain//功能:应用入口//****************************************************************** PASCA... [阅读全文]

编程初学者:游戏编程起源(初学者)Ⅰ

★第章 Windows编程基础☆ 介绍本章目是介绍WINDOWS编程基础在本章结束时你应该能够很好工作了虽燃可能是简单WINDOWS你需要有C语言基础知识我很少将C++代码扩充到中当然由于WINDOWS本身就是面向对象点类知识是不会对你有什么损害如果你不熟悉C++没有关系我想你还是能从我这里学到大部分东西所有代码都通过了MICROSOFT VISUAL C+... [阅读全文]

编程初学者:游戏编程起源(初学者)Ⅱ

☆ 创建窗口好消息创建窗口你所要做只是个CreateWindowEx坏消息是这个有好多参数嘿!把刀放下有话好说吗!真不难做事情总得走走形式嘛!以下是原形:HWND CreateWindowEx(DWORD dwExStyle, // extended window styleLPCTSTR lpClassName, // poer to registered... [阅读全文]

答softboy有关《回应Softboy的‘流星的舟地图遮挡算法’》

Softboy声明:我所有问题都是根据‘天眼“回应”文’产生有些问题也许是天眼并未在“回应”文中注明或是我理解上偏差而导致这里仅仅是讨论技术并不包含任何感情原因下面橘黄色文字是我“回应”文而墨绿色文字是softboyt提出问题而天蓝色文字是我回答: 每屏大约显示20*15个格子(考虑屏幕象素级卷轴和物体高度实际是679个)问题:请教天眼兄679是怎样计算出来... [阅读全文]

地图搜索算法:流星的舟地图遮挡算法(第一稿)

  下面文字将叙述成都金点工作组所设计RPG游戏流星的舟地图遮挡算法游戏地图采用斜45度视角屏幕分为了20*15个菱形图块每个图块大小为64*32(像素点)   首先看下这张图我算法是当扫描到物体编号点后先画出物体然后搜索左右两个修正区如果修正区中有其他物体编号那么先画出该物体然后搜索新找到物体两个修正区这样不断递归进行搜索直到全部搜索完毕  拒我测试这个算法速度还是可以但是还存在定缺陷如:有可能... [阅读全文]

地图搜索算法:续《地图遮挡算法》

Softboy:看了你有关流星的舟地图遮挡算法及其系列文章有些看法不过首先要声明是我没有编过什么大对你和天眼文章也看不太懂这里只是抱着学习态度(我认为我对这类算法问题比较强) 有关物体相互遮挡问题很复杂我想最完整解决方案就是建立 3维方位实际上目前流行 3维游戏都会采用这类思路方法而且它们数据比流星的舟更复杂对于流星的舟这类游戏来说速度和内存占用方面应没有问题不过对于流星的舟来说我们还可以简化这个... [阅读全文]

斜二视图:斜视角视图(一)

如果你对平铺(tiled)图形还无所知那么在这儿它就放在个“坚果壳”(nutshell)里组象素通常是矩形形状构成个平铺图形块如同地板上块瓷砖当你把这些图形块放在起时候他们就形成了个图案你还可以把砖块图案图形块堆放起来以构建更大平铺图案所以说你不需要存储原始位图而是用个地图来存储图形块号码从而可以绘制出更大图片个典型绘图从屏幕左上角开始向右移动直至右边界然后再向下移动行重新开始下面看下斜视角视图型... [阅读全文]

游戏开发基础:游戏开发基础(4)

第 4章 diectxdarw基础篇 第节 DirectDraw介绍Grubers个观点是DirectDraw“只是个bltting发动机”这是相当准确但却太简化了更准确地讲DirectDraw是个可以提供软件Software仿真测试独立于硬件设备bltting发动机DirectDraw主要用途是尽可能快、尽可能可靠并且尽可能连续地将图形考贝到视频显示设备上... [阅读全文]

斜视角图形引擎:它适合你吗?

作者:Geoff Howland prefix = o /出处:http://www.lupinegames.com/articles/isoeng4u.htm译者:张戴维译者Blog:http://www.5DBlog.com/user1/Davidz说到斜视角图形引擎可追溯到早期图形化电脑游戏Fairlight、上帝也疯狂(Populous)及较近期暗黑... [阅读全文]

撒旦的语法

  很多人写代码是照猫画虎这些“猫”最终就变成了教条(注1)旦教条被人熟知区别变量数值功能就被按照教条使用然后用些“胶水”代码组合起来实现需要方案通过对语法深入了解我们可以消除很多“胶水”这篇文章举了几个怪异C语法例子以及如何在不导致歧义(注2)情况下利用(滥用?)他们实现更高效代码记得返回值我第个有关“教条编程”例子将讨论格式化输出sprf下面这段代码写法... [阅读全文]

滑步教程:角色移动的步长、步速和滑步现象

滑步只跟步长有关就是轮人物行走(或跑步)实际移动像素当然国产游戏大多做不好大多数根本不去认真做人物行走播放简单帧帧播放动画并随意移动小人在地图上位置了事防止滑步又可以随意改变人物移动速度思路方法是这样:将走路用步长和步速两个量来控制步长必须定死按做出来图片中小人组动画下来移动像素为准步速是任意可以用游戏每帧或每 1/100 秒人物移动像素数来表示(可以是小数比如每帧刷新移动 1.2 个像素)简化讲... [阅读全文]

45度地图编辑器:斜45度角地图拼接

All Rights Reserved to Lacutis, 2004  有人在新浪网游戏制作论坛问这个那我随便说说这个问题解法先看看地图元素:\" width=64 border=0可以看出来是个扁菱形这个地图元素大小是64X32你可以随意决定元素长宽在设计时地图元素大小并不重要只要把尺寸扔进绘图方程就能正确地绘制地图在这个例子中我们就先用64X32来演示那么这个公式是如何样呢?先看看Stag... [阅读全文]

图片拼接:Tile Based Engine 中的墙壁自动拼接处理

  基于 Tile 引擎中重复利用率最高图素除了地面就是墙壁了, 大家回想下恺撒III 中修筑城墙, 或是 Simcity2000 中拉扯电线, 道路,每种物体都只有十几种基本图素来拼接而交叉处理都是自动选择正确图素. 假设我们做个地图编辑器, 这个功能应该也不能少吧:-)    实际上, 这个问题早在文本模式就已经出现过. 那就是表格线处理. 文本模式下, 不能绘制直线, 我们需要绘制表格时, ... [阅读全文]

tile是什么意思:Tile Based Engine的设计 - 遮挡处理

  所谓 Isometric, 应该是指等距视角, 和透视相对, 指视野内物体, 无论远近都用同大小来表现. 而Tile 就是指砖块, 我们平常所见许多 2D 游戏, 都是 Tile . 比如新出决战朝鲜, 还有去年皇朝霸业;-), 这两个游戏都是典型 Tile 游戏, 游戏中元素被分割为个个砖块拼装起来. 区别是, 前者是矩形 Tile, 而后者是 Isometric . 它Tile 有高度, ... [阅读全文]

坐标变换:Tile Based Engine的设计 - 坐标变换

  Isometric Tile处理比矩形稍微复杂点地方在于屏幕是矩形, 而反映出来游戏世界坐标轴有些区别. 无论是精灵移动, 还是处理 Tile 都需要经过坐标变换. 而个屏幕区域在游戏世界地图上却成了个菱形. 我想,所有第次设计 Isometric Tile 引擎员都为这个烦躁过 (自己感受啦;-) 不排除这个原因修改自己原始设计可能性 ^_^.    实际它点也不复杂,但需要你静下心来用直尺... [阅读全文]

双向链表:Tile Based Engine的设计 - 精灵链表

  通常说来, 第 3人称 2D 游戏中通常把景物和精灵分开处理 (至少我是这样) 尤其是游戏机上, 硬件对精灵有支持. 现在我们显卡多也支持显存间 keycolor 检查 Blt 操作, 实际就是用来加快精灵处理 (也包括景物)    精灵在运动时, 往往是基于像素 (虽然有人喜欢简化设计, 精灵在停止时候仍旧是站在格子里) 而景物却是静止在格子中. 如果能使用更有针对性思路方法分别绘制, 将可... [阅读全文]
< 1 2 3 4 5 6 7 8 9 10 11 > 共325条 分11页