佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 5689|回复: 69

分享我做的sprite, 另加游戏制作过程。

[复制链接]
发表于 26-11-2007 11:07 AM | 显示全部楼层 |阅读模式
l昨天下午用3dsmax 还有photoshop 弄了一个sprite 纯属分享。。




mask


[ 本帖最后由 tensaix2j 于 30-11-2007 01:21 PM 编辑 ]
回复

使用道具 举报


ADVERTISEMENT

发表于 26-11-2007 12:26 PM | 显示全部楼层
哦哦!做得不错,还连带Mask的。。。不过既然你能够使用3DSMax,为何不尝试直接使用该model制作3D游戏?

模型上加上些色彩或decal会更吸引人呢。
回复

使用道具 举报

发表于 26-11-2007 12:48 PM | 显示全部楼层
好可爱,
不过这样小的 sprite 不需要这样多帧吧?
还有,那个 mask 错了,应该把 sprite 内的色层完全去掉吧?

还有,这个是 “Royalty-free” 的吗

期待会多几款,酱就能制作一个小游戏了,
回复

使用道具 举报

 楼主| 发表于 26-11-2007 01:43 PM | 显示全部楼层
原帖由 geekman 于 26-11-2007 12:48 PM 发表
哦哦!做得不错,还连带Mask的。。。不过既然你能够使用3DSMax,为何不尝试直接使用该model制作3D游戏?

模型上加上些色彩或decal会更吸引人呢。


因为我现在只会做2D game.   

。。。虽然曾玩过opengl,
记得上次我export 出来的 3d model 还得花很多时间去写3d parser, vertex by vertex,的 extract 出来。。。
然后再把 surface 一一用gltriangle 从建出来在glcanvas上。。。(因为我不会用display list ,所以很lag...。。) 很多东西我到现在都没去研究。。



原帖由 sson 于 26-11-2007 12:48 PM 发表
好可爱,
不过这样小的 sprite 不需要这样多帧吧?
还有,那个 mask 错了,应该把 sprite 内的色层完全去掉吧?

还有,这个是 “Royalty-free” 的吗

期待会多几款,酱就能制作一个小游戏了,



哦。哈哈。。没注意到哦
我是用photoshop  invert 颜色然后调 brightness 跟 saturation 可能没彻底清除干净。

对啊, 任你用。
然后做好游戏给我玩。
回复

使用道具 举报

阿牙木 该用户已被删除
发表于 26-11-2007 02:23 PM | 显示全部楼层
我也是觉得动作太细致了,不过很厉害啊~~~

动作太细致的时候,当我们把这个resource丢进一个texture2D,要把rectangle割出来还不会说要太多时间,可是总觉得这种动作只要5-7副就可以了吧?
回复

使用道具 举报

发表于 26-11-2007 07:05 PM | 显示全部楼层
另外还有个意见:应该把一个动作做成一个row(横向的一行),然后每个row就是一个方向,这样当读取影像资料时会比较方便,因为图像在memory里面也是以row来排列的。如果用像你现在这种排列方式,每读完一个映像,你就得跳过一整行才能读取下一个映像,会浪费不少读取的时间的(在分秒必争的游戏里这是很重要的)
回复

使用道具 举报

Follow Us
 楼主| 发表于 26-11-2007 07:54 PM | 显示全部楼层
也顺便写了一个小游戏。。。但没完成的。。

下载

谁有兴趣可以跟我拿代码。

[ 本帖最后由 tensaix2j 于 26-11-2007 07:58 PM 编辑 ]
回复

使用道具 举报

阿牙木 该用户已被删除
发表于 27-11-2007 09:20 AM | 显示全部楼层
原帖由 geekman 于 26-11-2007 07:05 PM 发表
另外还有个意见:应该把一个动作做成一个row(横向的一行),然后每个row就是一个方向,这样当读取影像资料时会比较方便,因为图像在memory里面也是以row来排列的。如果用像你现在这种排列方式,每读完一个映像, ...


我在XNA上写的engine 是由上往下读的咧, an array of rectangle.
回复

使用道具 举报


ADVERTISEMENT

发表于 27-11-2007 08:08 PM | 显示全部楼层
只是个人意见罢了。如果你认为由上往下读很方便,又不介意在更换记忆位址方面多花的一点时间(这方面的计算通常会由API如DirectX负责),那就无所谓啰。

[ 本帖最后由 geekman 于 27-11-2007 08:12 PM 编辑 ]
回复

使用道具 举报

 楼主| 发表于 27-11-2007 09:03 PM | 显示全部楼层
真有分别吗?

BitBlt(hdc_buffer, player.x - viewX , player.y - viewY , player.width, player.height, hdc_mem, player.xframe * player.width, player.yframe * player.height, SRCAND);

如果我把xframe, 跟yframe 对换,

BitBlt(hdc_buffer, player.x - viewX , player.y - viewY , player.width,player.height, hdc_mem, player.yframe * player.width, player.xframe *player.height, SRCAND);


好像没什么分别,
都是  player.xframe * player.width , player.yframe * player.height 两个operation 做offset..

下一cycle blit 的东西,不管是隔壁那个frame,或是楼下那个frame...跟现在blit的这个frame没什么关系吧。。。。
反正都是 每秒blit  200 次。。。

我觉得差别不大,因为不是做image processing...

说到image processing, 我也曾在 fyp 做过. 是个很不错的经验。

[ 本帖最后由 tensaix2j 于 27-11-2007 09:10 PM 编辑 ]
回复

使用道具 举报

发表于 27-11-2007 09:57 PM | 显示全部楼层
如果有用ImageList就有分别。既然大家都觉得没差别就当我啥都没说过。
回复

使用道具 举报

 楼主| 发表于 28-11-2007 08:29 AM | 显示全部楼层
Render 了一张 vray 版本的。。 可以拿来做game的 封面或decoration

回复

使用道具 举报

 楼主| 发表于 29-11-2007 10:54 PM | 显示全部楼层
在这里我会分享我的制作过程。。
虽然这可能只是一个超简单的射击游戏。。但新手可以从中学习游戏制作的基本。。

新手们,想学的可以跟着做。
老手们,欢迎指点。


首先呢, 制作这个游戏就必须准备以下这些工具:

1.  C compiler.
本人用着 lcc 因为这个 compiler 很轻巧。。。 如果你有其他的例如 mingw或pellesC也可以。
http://www.cs.virginia.edu/~lcc-win32/   (5 mb 而已它的installer )

2. Text Editor
本人用的是 notepad++。觉得这个 很好用。。因为有很多习惯了的hot key..
http://notepad-plus.sourceforge.net/uk/site.htm

3.  Windows.
对。因为这个用到很多windows API.


4. 3dsMax.
我需要用这个来制作图片。 好处就是制作了一个3d model后,你可以render各种方向。
。而不是像2d图每个方向都得各个去画.。
可以到官网去下载 trial copy。


5. Photoshop 或 gimp
这个用来 edit 图片还有制造效果。


6. Fruity Loop
这个用来制作音乐 还有edit 音响。




准备完毕后,我们在继续谈。。

[ 本帖最后由 tensaix2j 于 9-12-2007 03:51 AM 编辑 ]
回复

使用道具 举报

 楼主| 发表于 1-12-2007 01:10 AM | 显示全部楼层
一些小小心得。

我制作这个游戏时是抱着好玩之心。。。。所以没什么规划的。。
想到什么就做什么。。。。。

或许有人会问
为何不用 game maker, flash , vb ,java ,或tcl 来写呢
原因很简单。只是好玩。。就当作学习咯。。。编程有它的好玩之处。。。

game maker, 我玩过了, 它的确是神奇到不用写code 也能制作游戏. 因为它有很多准备好了的 game object 以setting 还有drag and drop的方式任你用,就连编程里的基本construct if else 也是它其中一个object。。但我后来觉得,与其安排那些一粒粒的 game object的setting , 感觉就跟在写编程没分别,干脆直接写code更爽..而且,有很多limitation. 要做multiplayer 还得花$$$ 买另一个版本的才有这个功能。。

flash呢。我也玩了几年。 觉得,制作小游戏还ok. 而且可以embed在网页,而且还可以做http request向server 索取数据。(就像ajax 用xmlhttprequest那样)。 拿来做visualisation就很棒,server端可以是别人的web services,也可以是自己用任何一种server side scripting。 但据说flash的interpretor,比javascript 的 interpretor还要吃力慢。上次玩过flash 版的 turret defense, 非常lag.

vb6.0嘛。 因为是ms 的东东,所以要呼唤 win32 api 的function 会很简单(因为有intellisense) 需要丢进什么 parameters 一目了然.只是vb6.0 本身有些奇怪的瑕疵。。例如 没有 bitshift operator >> ,必须自己 乘二 或 除二 足够数次来达到目的。 但有个integer 的 除 “\”。vb6.0 要靠 vb6.0 的runtime dll 才可以跑。

Dotnet (vb.net, c#) 就比vb6.0 完整。 vb6.0的缺陷都修好了。 只是。。当你把游戏丢给朋友玩时,就要强迫他安装 Dot net runtime. (22mb左右吧。)

Java 是另一个巨人。 但很完整。要有 jre/jvm 才可以跑。

以上这两个跑managed code 的巨人有个好处就是很多本来很复杂的东西都包装到很简单使用 例如 socket 还有 thread.
只是开发工具很肥很重。

tcl  是个很容易上手又轻巧的 interpreted script,如果不想被人看code的话也可以compile成tcl bytecode 。
只是interpreted 的问题就是比compiled 慢。 但或许某日我会考虑使用它来写个游戏。

就这样啦。。
只是个人愚见。
欢迎交流。
回复

使用道具 举报

发表于 3-12-2007 06:31 PM | 显示全部楼层
用不同的C Compiler可以看到同样的Code的吗?
我用visual studio c++ 6.0 滴哦。。
虽然还没到那个Level, 但我很有兴趣想看看这个游戏的代码哦。
可以吗?
回复

使用道具 举报

发表于 4-12-2007 12:20 AM | 显示全部楼层
好贴。

我对那源代码有兴趣, 用的是DX API 吗? C++ 还是 C# ?
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 4-12-2007 08:50 AM | 显示全部楼层
都说是 win32 的 gdi 而已。 是 C.
回复

使用道具 举报

 楼主| 发表于 4-12-2007 08:57 AM | 显示全部楼层
原帖由 xFreaKx 于 3-12-2007 06:31 PM 发表
用不同的C Compiler可以看到同样的Code的吗?
我用visual studio c++ 6.0 滴哦。。
虽然还没到那个Level, 但我很有兴趣想看看这个游戏的代码哦。
可以吗?



PM 你们了。
PS: 代码还没写好的。还有很多hard code的部分。
回复

使用道具 举报

 楼主| 发表于 7-12-2007 10:02 AM | 显示全部楼层
3dsmax 的部分。。。
想学的,可以到三维研讨区

http://chinese.cari.com.my/myforum/viewthread.php?tid=399493&extra=page%3D1


Photoshop 或 GIMP的部分
也可以到二维图像研讨区。。
http://chinese.cari.com.my/myforum/forumdisplay.php?fid=116

FL 的部分,
也可以到音乐创作区
http://chinese.cari.com.my/myforum/forumdisplay.php?fid=86

(但好像没人讨论 FL的。。。 晕~。)

大致上,游戏里用的音乐都很 techno 或重bass 的。
FL 我用的经验不多(3个月左右)。。 基本上只要有节奏感,然后懂得基本的 automation 操作。。就可以了。

我在 youtube 看到有用 FL  制作trance 的 tutorial,顺便分享好了。。




我也跟着做了一个。。 当然用不同的音乐风格。。
作品在此。。 随便配的。。献丑了。
http://www.popsg.com/tensaix2j/media/txfl02.mp3

[ 本帖最后由 tensaix2j 于 9-12-2007 03:32 AM 编辑 ]
回复

使用道具 举报

 楼主| 发表于 8-12-2007 06:14 PM | 显示全部楼层
好啦, 可以开始写 code 了。。

lcc的网站有介绍这里有几本好书,应该先读一读,会比较好办事。。
http://www.q-software-solutions. ... _download_locations

不过,最重要的还是。。
http://www.winprog.org/tutorial/index.html

这是学 win32 的好开始。








就先从这里开始好了。。

#include "windows.h"
int WINAPI WinMain(HINSTANCE h,HINSTANCE hPrev, LPSTR lp,int winMode)
{
    return 0;
}

[ 本帖最后由 tensaix2j 于 9-12-2007 03:25 AM 编辑 ]
回复

使用道具 举报

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

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 24-12-2025 10:02 AM , Processed in 0.135820 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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