游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1793|回复: 4

脚本如何加入到正常引擎中去的问题?

[复制链接]

22

主题

144

帖子

193

积分

注册会员

Rank: 2

积分
193
发表于 2007-8-2 14:15:00 | 显示全部楼层 |阅读模式
我在做游戏的时候(oop),总是会把各个引擎封装成类,然后提供多个接口给sprite使用(2d),这个时候在外面的逻辑就会控制很多sprite的各个属性:坐标,帧号数等等,

GameMain()
{
GetInput();//用户输入
Judge();   //物理,AI等逻辑判断
MoveSprite(); //移动或是Animation

//图像
BlitThem();   //..
Display();     //...

ClearScreen();//...
}

这就是一个循环所要大概结构,如果脚本加入的话一般是在Judge()着一个函数里面,可是怎么加入呢?
给脚本函数传递一些什么东西呢?  是鼠标点击的位置,当前sprite的帧号,还是sprite的位置也要?

一般来说要一个脚本要判断自己和周围各个sprite的关系,这些关系及其复杂,比如位置还有很多属性,如果这些都要当作参数的话,画面中有100个sprite,怎么办?

如果把这些都纳入脚本的话,GameMain只要:
GameMain()
{
   CallScript();

   BlitThem();
   Display();
   ClearScreen();

}

那这样的话,A*,rect collision,chase etc.这些很恐怖的CPU密集型算法都要用解释性语言执行,那岂不....

实在不明白.....

不知道有没有那位niu人在真正的项目里面做过,商业脚本是怎么和游戏引擎配合的,只要指点一两句就可.

还有谁能介绍一两本好书给我,<<game scripting mastery>>我已经开过了(tsinghua,黑皮) ,只是没有讲述其他的方面,他就是把一个demo的所有东西(除了图像引擎) 都放到了script里面.
[em7]

76

主题

1100

帖子

1107

积分

金牌会员

Rank: 6Rank: 6

积分
1107
发表于 2007-8-2 22:11:00 | 显示全部楼层

Re:脚本如何加入到正常引擎中去的问题?

建议你买本书

directx角色扮演游戏编程(3d类),premier系列教材(不过最近不少店貌似没卖了,早点下手)

不过这个里面的脚本是他自己定义的,但这个书完整性很强.建议读懂完整的构建方式后就可以使用别的脚本语言(如python)

22

主题

144

帖子

193

积分

注册会员

Rank: 2

积分
193
 楼主| 发表于 2007-8-3 17:54:00 | 显示全部楼层

LZ

谢谢楼上了,我在网上书店没看到,但是我的书库里面有英文版的,只有这么先看看了。

5

主题

755

帖子

757

积分

高级会员

Rank: 4

积分
757
发表于 2007-8-4 11:48:00 | 显示全部楼层

Re:脚本如何加入到正常引擎中去的问题?

看你用什么脚本了~如果是lua的话,里面有lib和 .h直接包含以后,按照lua的规则调用就可以了

22

主题

144

帖子

193

积分

注册会员

Rank: 2

积分
193
 楼主| 发表于 2007-8-4 21:19:00 | 显示全部楼层

Re:OSFG

我不是这个意思,用什么语言不是问题,我只是说如何集成的问题,就像设计模式与具体语言没有关系一样。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-25 14:26

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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