幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4521|回复: 23

有用VB写游戏的没?交流交流~

[复制链接]

1

主题

13

帖子

36

积分

②入门

积分
36
发表于 2005-10-3 19:12:12 | 显示全部楼层 |阅读模式
我对RM不是很了解,但一直尝试用VB写游戏
用VB开发是一件很有趣的事情,可以实现一切想实现的内容.

以前用VB写一些小软件
最近在研究如何写游戏.我尝试做了四方向卷轴模型,矢量地图模型,帧数控制,循环背景,角色动画,多媒体播放控制.都获得了成功.
所以我觉得用VB写游戏其实不是遥不可及的事情~

有没这方面同好?有机会的话交流交流~我还有很多不明白的东西.

开发环境VB6.0+WIN32API

其实一直想用DX写游戏....但是DX FOR VB的资料实在是太欠缺了,很遗憾啊...哪位朋友有的话是否可以提供给我~

我觉得,只要有好的美工~VB做出的游戏不会逊色于商业游戏.
虽然C的执行效率比较高,但是我并不是写很大型复杂的游戏,所以没有丝毫影响~


下面是我写的一个矢量地图的模型,只用了三种地图元素,图是在RM里用PS偷的 [s:2]

1.写一个地图代码文件
2.文件读写时候的数据类型转换
3.二维数组存取
4.数组对应切割地图元素

程序很短很简单,画面好象FC早期RPG地图....不过画面只是表面现象呵呵,关键是思路不是么~

Private Sub Form_Click()
drawmap1
'Text1.Text = mapno(7, 8)
End Sub

Private Sub Form_Load()

Open "\map1.dat" For Input As #1        '打开事先写好地图代码文件,由1~3数字构成

For i1a = 1 To 8                        '分别为二维数组赋值
For i1b = 1 To 8
  Line Input #1, mapnos1
  If mapnos1 = "1" Then mapnoi = 1      '数据类型转换,便于处理
  If mapnos1 = "2" Then mapnoi = 2
  If mapnos1 = "3" Then mapnoi = 3
   
  mapno(i1a, i1b) = mapnoi
Next
Next


End Sub
Public Sub drawmap1()                   '该过程按照二维数组的值拼装地图

For i2a = 1 To 8
  For i2b = 1 To 8
    If mapno(i2a, i2b) = 1 Then
      BitBlt Picmain.hDC, mapx, mapy, 50, 50, Picmap1.hDC, 0, 0, SRCCOPY
    End If
    If mapno(i2a, i2b) = 2 Then
      BitBlt Picmain.hDC, mapx, mapy, 50, 50, Picmap1.hDC, 50, 0, SRCCOPY
    End If
    If mapno(i2a, i2b) = 3 Then
      BitBlt Picmain.hDC, mapx, mapy, 50, 50, Picmap1.hDC, 100, 0, SRCCOPY
    End If
    mapx = mapx + 50
  Next
  mapx = 0
  mapy = mapy + 50
Next
End Sub
回复

使用道具 举报

218

主题

1万

帖子

10万

积分

⑧专业

赋予你第五自由

积分
108021
发表于 2005-10-3 19:19:12 | 显示全部楼层
我是赞同楼主的言论的,只是一般的编程语言门槛比较高,不是有绝对决心学的或者有天分的人是比较难学的...SO,还是搞搞笑RM吧..

第 五 自 由 -   5th  Freedom   -

回复 支持 反对

使用道具 举报

125

主题

288

帖子

1387

积分

⑥精研

积分
1387
发表于 2005-10-3 19:20:49 | 显示全部楼层
DX FOR VB其实不需要什么特别的支持,把C++的头文件找来自己转换一下吧,有一个HWND而且有个消息处理回调就可以了。VB中用AddressOf(FunctionName)传递函数地址。
回复 支持 反对

使用道具 举报

1

主题

13

帖子

36

积分

②入门

积分
36
 楼主| 发表于 2005-10-3 19:29:37 | 显示全部楼层
下面是引用Advance于2005-10-03 19:20发表的:
DX FOR VB其实不需要什么特别的支持,把C++的头文件找来自己转换一下吧,有一个HWND而且有个消息处理回调就可以了。VB中用AddressOf(FunctionName)传递函数地址。

我并不是很懂你说的这些,能说的详细些吗?

DX FOR VB的确是不需要什么特别支持的,只是缺乏编程资料.我想如果能搞定DDRAW的话就能解决大多2D游戏画面控制了.

有没什么文章能推荐下~谢谢~
回复 支持 反对

使用道具 举报

125

主题

288

帖子

1387

积分

⑥精研

积分
1387
发表于 2005-10-3 19:36:36 | 显示全部楼层
资料的话……到VB大世界去看看吧,我已经看到一些DX FOR VB的参考资料了。另外就是建议学习一些完全面向对象的语言,比如C++,因为VB确实不太好,游戏做大了,你所碰到的问题就会越来越多,非常棘手
回复 支持 反对

使用道具 举报

1

主题

13

帖子

36

积分

②入门

积分
36
 楼主| 发表于 2005-10-3 19:47:51 | 显示全部楼层
我也有学习C++的打算....资料实在丰富...口水直流.....

DX FOR VB资料网上我也看到过,是原版的.不过写的不是很好,看的也累.

至于书,我是一本都没见过,在网上查了查,全上海就有上海图书馆有1本......也不知道怎么样...
回复 支持 反对

使用道具 举报

9

主题

1512

帖子

9136

积分

荣誉群

Cod3r

积分
9136

终身成就奖

发表于 2005-10-4 00:31:01 | 显示全部楼层
http://www.toolkitzone.com/

這裡有一個發展了數年的VB撰寫RPG引擎,
而且是開源的,樓主仔細看看保證有所助益
(\\__/) (O.o ) (> < ) This is Bunny.
回复 支持 反对

使用道具 举报

121

主题

3186

帖子

2万

积分

管理员

お嬢様

Rank: 9Rank: 9Rank: 9

积分
22410
发表于 2005-10-4 00:52:45 | 显示全部楼层
http://jing.gbq.cn/data/game/RPGBattle1.rar
N年前写的RPG战斗引擎....
回复 支持 反对

使用道具 举报

50

主题

994

帖子

6699

积分

管理员

爱干啥干啥!

Rank: 9Rank: 9Rank: 9

积分
6699
发表于 2005-10-4 01:06:04 | 显示全部楼层
以前有个DirectX4vb.com很不错的。老外的网站,资料全,现在貌似关闭了。

vb做游戏开发的话,推荐套用现成的库。最底层的东西重复开发意思不大。
徐波的ImpactX是开源的VB游戏引擎,而且只是封装了最基本的类,高层逻辑是需要自己写的,比较自由。
3D的话,TrueVision3D有开源的VB版本,还是不错的。

即使是2D,使用DirectX也是必须的。不要妄想用Win32API作出高效的游戏,一般性的工作在VB环境下速度都是毁灭性的。2D游戏这种东西,很大一部分工作就是帖图帖图再帖图。所以一定要快……

其实用VB开发游戏,并没有利用到多少VB的快捷开特性,可能是Basic的语法有些人比较习惯吧。呵呵,VB做的不会比其他差多少,还是要看作者本人的水平啊。

“放下屠刀,立地成佛” 故应先杀生,然后再成佛。

(\\_/) (-_-) ()+() this is bunny priest.
回复 支持 反对

使用道具 举报

1

主题

13

帖子

36

积分

②入门

积分
36
 楼主| 发表于 2005-10-5 01:56:02 | 显示全部楼层
下面是引用yoxola于2005-10-04 00:31发表的:
http://www.toolkitzone.com/

這裡有一個發展了數年的VB撰寫RPG引擎,
而且是開源的,樓主仔細看看保證有所助益

很不错的引擎~有机会偶会研究的....看上去好象很复杂的样子~
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2025-5-8 08:43 , Processed in 0.013317 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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