ページ 11

Luaの使いどころ

Posted: 2014年1月29日(水) 04:26
by dic
おはようございます。 一日眠れなかったdicです。

Luaを、C言語と連携させる方法は、おおよそわかりました。
そして、C言語とLuaでシューティングを組んでいるのですが、
どういった部分をC言語にまかせて、Luaはどういった処理を担当するのが
いいのでしょうか?

たとえば、メニューを表示させて、ユーザーからの入力を待って、選択しによって処理内容が変わります。
変数も、バラバラに使ってしまうので、ちょっと気になります。
(選択肢の番号や、メニューのID番号など)

それとも、もういっそのこと、悩まずにC/C++言語でメニューは一気につくってしまって
STGのメインの敵の動きや、弾の動きなどをLuaで試行錯誤しながらやってしまったほうがいいのでしょうか?

C言語と、Luaの担当部分で悩んでいます。
どういった使い分けがいいのでしょうか?
アドバイスをお願いします。

Re: Luaの使いどころ

Posted: 2014年1月29日(水) 08:13
by beatle
一度作ったらあまり変わらないところはC/C++で、何度も微調整が掛かる部分をLuaで、っていうのがいいのでは?
ゲームのメニューとかはゲームバランスに関係無いので、何回か調整すれば完成しますよね。→C/C++
敵の思考回路とか弾の動きはマップやストーリーを作ってくとバランス調整が必要になり、何度も変えますよね。→Lua

Re: Luaの使いどころ

Posted: 2014年1月29日(水) 10:51
by せんちゃ
ゲームパラメータやオブジェクトシステム・リソース管理システム、シーンマネージャなどはC/C++で書いて、
オブジェクトやシーンの制御をスクリプトに追い出すというのがよくある分離方法でしょうか。
スクリプトに追い出すべき処理というのは主に微調整が必要になる部分です。
例えばメニュー画面をCで書いちゃうと画像素材の配置が大変です。
座標をちょっとズラす度に毎回ビルドしなきゃいけません。
スクリプトに追い出すと書き直すたびに反映されますのでこの辺の調整時間をぐっと短縮できます

Re: Luaの使いどころ

Posted: 2014年1月29日(水) 12:39
by softya(ソフト屋)
大体の所は出てますが、メニュー操作をLuaに追い出せばシーケンス制御がメインループと別に出来るのでメニューの階層処理が簡単になると思います。
簡単なメニューならC言語でやっても変わりません。つまり、面倒だ!と思ったら使いどきかなと。

Re: Luaの使いどころ

Posted: 2014年1月29日(水) 18:55
by dic
>>beatle さん
そうですね。単純に変更の回数が少ないところはC/C++で、
変更が多いところはLuaというのがシンプルでいいですね


>>せんちゃさん
はい。そのスクリプトに追い出す部分を、どう割り出すのか?って
ところで悩んでいます。
どちらかというと、C/C++とLuaの役割をどうしようかということです。


>>softya(ソフト屋)さん
はい。C/C++でもLuaでも、どちらでもメニューを実装するのは
できるので、どこでその線引きをしようかと悩んでいました。
自分の感性が基準になってもいいのですね。

Re: Luaの使いどころ

Posted: 2014年1月29日(水) 20:41
by softya(ソフト屋)
使ってみないと分からないというか、自分にとってのLuaのいい役どころが決まってこないと思います。
つまり、やってみて失敗しても良いじゃないですか。って事ですかね。
失敗するうちに見えてきますよ。
オフトピック
スクリプトはC言語で組んでいて面倒だから導入するから、その時に役割は見えている・・・。
と思ったんですが違ったようです。

Re: Luaの使いどころ

Posted: 2014年1月31日(金) 19:49
by dic
>>softya(ソフト屋)さん
はい。たしかに、やってみてそれからよく考えてみます。
ありがとうございました。

あまりのLuaの再読み込みの速さについていってない