NintendoDS(NDS)非公式開発 Part3
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2008/04/08(火) 07:05:13ID:MngpkM4u初心者歓迎。質問歓迎。英語苦手な人歓迎。冷やかし歓迎。ネカマ歓迎。
資料、リンク等
http://nocash.emubase.de/gbatek.htm
http://www.bottledlight.com/ds/index.php/Main/HomePage
http://www.helloworld.jp/~duke/nintendo_ds/
開発環境
http://www.devkitpro.org/
http://sourceforge.net/project/showfiles.php?group_id=114505
関連スレ
ゲームボーイアドバンス(GBA)開発@ゲ製板(避難所)
http://bbs.gamdev.org/test/read.cgi/gamedev/1055111303/
ゲームボーイアドバンス(GBA)非公式開発 Part2
http://pc5.2ch.net/test/read.cgi/gamedev/1099119005/
前スレ
http://pc11.2ch.net/test/read.cgi/gamedev/1175812090/
0575名前は開発中のものです。
2009/02/01(日) 15:21:11ID:doJckHUo>>574
ええっ!?Σ(゜Д゜;)まじですか・・・。
今度問い詰めておかねば・・・。
動画で出てない分は少しいじるしかないですね。
それか動画作成者以外に書いてくれる人がいればいいんですが。
0576名前は開発中のものです。
2009/02/01(日) 18:54:44ID:NB8O9+BJちゃんとプログラミング覚えたい初心者向けだと思うよ。
環境ととのえるまでが初心者向けじゃないし、とりあえず動く物が
作りたい初心者向けでもないが。
0577名前は開発中のものです。
2009/02/01(日) 20:00:02ID:FgyNg3wg0578名前は開発中のものです。
2009/02/01(日) 20:43:15ID:KX1X34sv0579名前は開発中のものです。
2009/02/01(日) 20:45:49ID:cnnkW3sv細かい解説がGoogle先生で見つからない分、他より面倒臭いです・・
今、consoleIniti と併せて bgInit の使い方をサンプルから推測してます。
グラフィックモードの設定とかメモリ領域とかコントロールレジスタ?がよくわからんです。
サンプルを読んで機能を推し量る事は、諸先輩方にとってはアタリマエなのかもしれませんが、ハードルが高いと感じます
0580名前は開発中のものです。
2009/02/01(日) 21:02:25ID:LwrX2NpJ俺も最初はDSゲーム作るのはチンプンカンプンだったけど、
海外のチュートリアルを読んでいるうちに、そこそこ機能は理解できたよ
0581名前は開発中のものです。
2009/02/01(日) 21:15:42ID:FgyNg3wg組み込みのプログラムみたいなもんだからハードの知識も必要
メモリマップやらI/Oやらでとても初心者向きとはいえない
0582名前は開発中のものです。
2009/02/02(月) 00:01:53ID:YviaD9V9人のソース読んだり改造したりしながら覚えることになるから、
Cの文法ぐらいは先にざっと把握してないときついだろうけど
0583名前は開発中のものです。
2009/02/02(月) 02:56:58ID:60wupfPK習うより慣れろで、とりあえず弄ってみるのをお勧めする。
0584名前は開発中のものです。
2009/02/02(月) 14:21:32ID:CM2ULWfv0585名前は開発中のものです。
2009/02/02(月) 15:17:17ID:rC8/IJZb0586名前は開発中のものです。
2009/02/02(月) 17:13:39ID:Wp+UGLqX法線マップをやろうとして特許関係の書類をあさりまくった
解体新書が訳されたときオランダ語のある単語が「眉毛」を意味
だとわかるのに数日かかったって話があるがまさにそんな感じ
非公式開発ってのは基本的に地味にコツコツやるものよ
0587名前は開発中のものです。
2009/02/02(月) 19:33:31ID:GJoPLVcX鼻じゃないっけ?
0588名前は開発中のものです。
2009/02/02(月) 20:01:23ID:7UHknmAE0589名前は開発中のものです。
2009/02/02(月) 21:05:39ID:HNdgJu0hWindowsプログラミングだとOSやライブラリ等の必要な前提が多すぎたり
無制限にリソースを使えることで何でもできる反面どこまでできるかわからんから
GBAぐらいのプログラミングのほうが入門向きというようなことはどこかで読んだけど…
昔のマイコン世代の感想の気がする。
0590名前は開発中のものです。
2009/02/03(火) 00:22:36ID:mei0X0S6そういう意味ではGBAくらいが良いのではないかというのは分からないでもない
でもなあ…趣味で適当にソフト作る上でそこまで覚えなきゃダメかっていうとそうでもない気がするなあ…
0591名前は開発中のものです。
2009/02/03(火) 00:35:32ID:9opcxwb0低レベル過ぎてめんどうだけどね
ま、趣味ならやってみて詰まれば別のやり方すりゃいいだけっしょ
最初はどうやっても覚えることはたくさんあるんだし
最終的にうごけばいいんだ、うごけば
0592名前は開発中のものです。
2009/02/03(火) 00:44:28ID:mei0X0S60593名前は開発中のものです。
2009/02/03(火) 01:10:59ID:CwiEihvd初心者向けで良いかもしれない。
0594名前は開発中のものです。
2009/02/03(火) 01:19:45ID:6dVd6NJi自分は基本設計をDxLibで書いてDSに移植したが
それでもDSの動作にずいぶん悩まされたぞ。
0595名前は開発中のものです。
2009/02/03(火) 02:00:57ID:cIPVVndzどういうところで悩んだか書いた方が参考になるんじゃね。
0596594
2009/02/03(火) 21:28:08ID:6dVd6NJi水平割り込み中に次の処理走ってて描画前のスプライト書き換えてたのが一番苦戦したが
それ以前にあほみたいに実行しながらデバッグ出来るVS環境とかはどう考えても楽。
職業マならデバッグは脳内で済ませるのが理想だが
ゼロからで趣味なら実行しながらデバッグ出来る環境が良いと思う。
0597名前は開発中のものです。
2009/02/04(水) 01:29:10ID:Uu/zzdPb0598名前は開発中のものです。
2009/02/04(水) 18:47:20ID:xHNDOquK0599名前は開発中のものです。
2009/02/04(水) 20:00:11ID:N0DiczWK本家からはなぜかおとせないんです
0600名前は開発中のものです。
2009/02/04(水) 20:51:33ID:eHmLR4GDマルチ乙
0601名前は開発中のものです。
2009/02/05(木) 23:23:00ID:VNiyRODT一部をUVマップかけた3Dデータをimd、icaにはできるんですが、
その後コンバートすると動かなくなっちゃうんです。
テクスチャ全部剥がす→動く
テクスチャべた貼り→動く
と言う結果から、原因はUVマッピングか、もしくは
一つのTGAファイル(4x4)から手足など
5箇所にテクスチャ貼り付けてる事かなあ、と思うんですけど、
イマイチ上手くいきません。
皆さんのオススメのテクスチャの張り方って、教えていただけませんか。
0602名前は開発中のものです。
2009/02/05(木) 23:44:19ID:m2cCNN4Bまずsageろ
0603名前は開発中のものです。
2009/02/06(金) 01:55:13ID:ryNuAw6Iすんませんした。以後気をつけます。
0604名前は開発中のものです。
2009/02/06(金) 18:16:12ID:8OIh0Ferimdとかicaがよーわからんけど、テクスチャなら
TXTURE_PACK(floattot16(UV.u*サイズ,UV.v*サイズ))
を頂点情報とかと一緒にcalllistにつっこんでglCallListで表示できてるよ。
NDSさわりはじめて数ヶ月なんでこれがオススメかどーかわからん。
0605名前は開発中のものです。
2009/02/06(金) 21:11:29ID:0ZspIps4逆引きNDSプログラミング - ファイル入出力
ttp://smilelab.sakura.ne.jp/ndswiki/?%A5%D5%A5%A1%A5%A4%A5%EB%C6%FE%BD%D0%CE%CF
の通りにやってるんですが、fatInitDefault() が0を返してどうにもできません。
何を見直せばいいんでしょうか?Devkit1.4.9 で作って Desmume0.80で確認しています
0606名前は開発中のものです。
2009/02/06(金) 21:28:50ID:m+T+VYa1実機じゃないとファイル関係はうまく作動しないことが多い。
0607名前は開発中のものです。
2009/02/06(金) 22:05:06ID:0ZspIps4Devkitをアップデートする前は動いていたので、何かあるのかと思ったのですが
R4からは動いたのでとりあえずスルーする事にします。
0608名前は開発中のものです。
2009/02/07(土) 20:08:04ID:yyith2Ir使っている3Dエンジンとかの前提条件が抜けてるw
もしかして公式?
おいらは最近NitroEngineの評価を始めたが、
2画面3Dとかもサポートしててなかなかいい具合だ
ただしモデル変換ツールがMD2限定というのが難点
MQOや3DSとかからの変換は自力か。。。orz
0609名前は開発中のものです。
2009/02/08(日) 05:30:26ID:M/ciWl820610名前は開発中のものです。
2009/02/08(日) 12:55:32ID:E6PmFadU0611名前は開発中のものです。
2009/02/08(日) 13:03:07ID:kcHdZlRlまぁ一度に扱えるサイズは4MB以内だけれども。
0612名前は開発中のものです。
2009/02/08(日) 13:46:58ID:Ig9xpOLlhomebrewで4MByteをオーバーしているのは少ないけど。
ただ、メモリの都合で3.8MByteくらいまでしかメモリにロードできないだけだと思う。
GBAスロットを使えばもっと増えると思うけど、そうする必要も特に感じない。
そのメモリをうまく利用すれば、何とかなると思うんだが。
どうしても足りないときは色々不都合があるけど外部に一時ファイルを用意して使ってもいいし。
0613名前は開発中のものです。
2009/02/08(日) 16:10:03ID:E6PmFadU方法キボン!
今はnitroFS使って見かけ上だけ4M超やってるけど出来れば素の巨大ROM作りたい
0614名前は開発中のものです。
2009/02/08(日) 16:38:19ID:kcHdZlRlいや、ROMのサイズ質問だったから、そう答えただけで〜
実際やってることは、たぶん君と同じような感じ。
(nitroFSライブラリは使ったこと無いので憶測)
自分はndstoolでndsにデータファイル追加して、GBAカセット領域にマッピングされる環境ならソコからリード。
GBAカセット領域にマッピングされない環境なら、DLDIで自分自身のndsにファイルアクセスしてデータファイル取り出してる。
だから、一度に扱えるサイズは4MB以内だけれども。
0615名前は開発中のものです。
2009/02/08(日) 22:16:52ID:YeinDRWX無茶言うな。起動する度に全NDSファイルのMD5検索でもする気か?
32bit程度のID埋め込みさえ、100個もNDSファイルがあれば無理だろうな。
0616名前は開発中のものです。
2009/02/09(月) 00:17:11ID:CV9xxtj9某テトリスがROM名変更すると動かなくなってたのはそれのせい。
0617名前は開発中のものです。
2009/02/09(月) 02:25:43ID:42hGD2U7一応nitroFSとかは見てたんですが、結局DLDIで読み込んでるのがすっきりしなくて。
これができない理由、自分で調べても良く理解できなかったんですが、
DSのプロテクトの関係でデモを動作させるモードで動いてるとかそんな理解でいいんでしょうか。
0618名前は開発中のものです。
2009/02/09(月) 15:58:35ID:LCQ+tlqH0619名前は開発中のものです。
2009/02/09(月) 23:11:14ID:Oda8IwPH0620名前は開発中のものです。
2009/02/09(月) 23:30:54ID:CV9xxtj9出来ない理由はおそらくlibNDS開発チームがそこを実装するより
FATの方が色々出来て便利じゃね?と考えたからだと推測
デモ云々みたいな制限は無いのでlibNDS自作するくらいの気合があれば技術的には可能のはず
0621名前は開発中のものです。
2009/02/10(火) 00:55:09ID:ETqs47vs0622名前は開発中のものです。
2009/02/10(火) 07:30:07ID:2ip1j0ogあ、可能なんですか…。
まあ市販のROMが動いてるみたいですし、そりゃそうか。
また自分のレベルがあがったら再挑戦しようと思います。
リンカとかその辺も勉強しなきゃいけなさそうで難しいです。
でも現状データの置き場に困りますよね。
ルートにおいてくれって書いとけばいいんでしょうけど。
0623608
2009/02/11(水) 05:30:50ID:QkgVk7QOできたっぽいので、NitroEngine評価中の同志へ。
ttp://www1.axfc.net/uploader/File/so/18457
生成されているのはDISPLAYLISTなので、NitroEngine以外
でも使えるかも?
時間と知識不足でテクスチャとシェーディングは未対応。
Normalの扱いもちょっと疑問な点があるので、誰かコード
レビューしてくれるとありがたい。
じゃ、おやすみ〜zzz
0624名前は開発中のものです。
2009/02/11(水) 18:49:37ID:xUUFvkK/毎フレーム単一の画像だけ格納して拡大や縮小を加えて表示するレイヤーのようなものですか?
0625名前は開発中のものです。
2009/02/11(水) 19:32:23ID:xUUFvkK/つまりNDSにもイメージを描画する関数、
draw(Image,x,y,src_x,src_y,width,height,rotation,zoom_x,zoom_y)
のようなものがあるのかと思ったのですが、
どうもチュートリアル等を見ていると、
バンクと言われるVRAMに画像データを書き込んだ後、
拡大や回転を司るレジスタに値を設定してるだけです。
レジスタを設定したあと、肝心のバッファにデータを書き込んでいる節がありません。
ということは、バンクの画像は1フレームごとに呼び出される何らかの関数の中で画面に反映され、
ハードウェアの拡大回転機能を利用する場合は、
1フレームで描画できるスプライトの数はバンク数に制限されるということでしょうか。
0626608
2009/02/11(水) 19:41:29ID:hRzOTkDt・レイヤーは複数持てる
・レイヤーのサイズは決められたサイズから選ぶしかない
・画像の格納場所とレイヤーとは別途関連付けが必要
という前提のもと、後者の理解でOK
直接VRAM描画もできるけど、アクションゲームとかを
作るのならスプライトを活用するべき。
あとチュートリアルより、nds-exampleのコードを読む方が
理解は早いと思う。
0627名前は開発中のものです。
2009/02/11(水) 20:04:51ID:xUUFvkK/ありがとうございます。
無数にスプライトを描画したいときは自前でVRAMに描けばいいのですね。
nds-exampleも読んでみます。
0628名前は開発中のものです。
2009/02/11(水) 20:46:05ID:aJfz9AvOupdateOAM();で実際の画面に反映されますね
私もスプライトダブラーなるものを最近知って驚嘆した初心者ですが
VRAMに直接書くなら、もうスプライトじゃなくないですか??
0629名前は開発中のものです。
2009/02/11(水) 21:28:32ID:dewdho4k任天ハードはスプライトをオブジェクトって言うんだよな
懐かしい
0630名前は開発中のものです。
2009/02/11(水) 22:39:29ID:vF0LLI1xよく使われているみたいだけど・・・
たとえば↓のスクリーンショット
ttp://www.nintendo.co.jp/ds/software/ca6j/index.html
これってどうやってきれいにならべているのかな。
タイルは8x8がベースだから、8×8ドットの文字や16×16ドットの
文字はきれいに並べられるけど、こんな中途半端なサイズ文字を
きれいに並べるには、ビットマップBGに直接ドットを書き込む
しかないのか?
0631名前は開発中のものです。
2009/02/11(水) 22:53:35ID:V3TsDlgP結局直接書き込まなきゃいけない罠
0632名前は開発中のものです。
2009/02/12(木) 00:44:08ID:ez10fTHg同じところで引っかかっとるな。
128個以上スプライトが出る想定なら
スプライトダブラでぐぐると良いらしい。
GBAで弾幕出してる先駆者がいます。
直接VRAMに描画すると遅くてお話にならない。
0633名前は開発中のものです。
2009/02/12(木) 01:02:37ID:xVkvaN1L0634名前は開発中のものです。
2009/02/12(木) 01:30:17ID:EH35Viguエラーやらウォーニング出まくりで絶賛修正中なのですが、
ATTR1_FLIP_X や ATTR1_FLIP_Y はどこで設定すればいいのでしょうか?
ヘッダを見る限り、oamSet() には
それらしいパラメータを渡せる箇所あるようには思えませんでした
0635634
2009/02/12(木) 01:49:57ID:EH35Viguこれで本当にいいのか非常に判断に困っています。
pSpriteEntry *pOam = &oamMain.oamMemory;
pOam[ 0 ]->attribute[ 1 ] |= ATTR1_FLIP_X;
これで一応反転は確認できましたが、
他に方法がありましたらそのご教授のほどお願いいたします。
0636名前は開発中のものです。
2009/02/12(木) 02:54:54ID:o/Uy33/C0637608
2009/02/13(金) 01:22:02ID:Ienu2n/mMQO_2_BIN.cppの245行目と345行目、_v[a]に代入している
point[a]をpoint[2-a]に要修正orz
0638608
2009/02/14(土) 00:11:32ID:8cZ2bk/lttp://www1.axfc.net/uploader/File/so/18634
テクスチャはシングルのみ対応なので、必要に応じて
ソースを弄って欲しい。
0639名前は開発中のものです。
2009/02/14(土) 00:18:09ID:hXgxPfxx0640名前は開発中のものです。
2009/02/16(月) 16:10:36ID:D6f4gD/Mttp://www4.uploader.jp/user/mai2012/images/mai2012_uljp00001.png
ttp://www4.uploader.jp/user/mai2012/images/mai2012_uljp00002.png
ttp://www4.uploader.jp/user/mai2012/images/mai2012_uljp00003.png
ttp://www4.uploader.jp/user/mai2012/images/mai2012_uljp00004.png
0641名前は開発中のものです。
2009/02/16(月) 19:01:37ID:W0HG2SDfhttp://schiphol.2ch.net/test/read.cgi/gameurawaza/1213503678/
ここでDSでBMSって話が出てたけど、
性能的には可能なのかね。
0642名前は開発中のものです。
2009/02/16(月) 20:06:51ID:9MszuW7Dそのままだと無理
0643名前は開発中のものです。
2009/02/16(月) 21:15:32ID:gKFMF8AeDirectXみたいに2D描画をハードウェアで高速化できないの?
0644名前は開発中のものです。
2009/02/16(月) 21:22:20ID:9R2tMRhyあとメモリ節約
0645名前は開発中のものです。
2009/02/16(月) 23:31:37ID:+xvha/Ch0646名前は開発中のものです。
2009/02/16(月) 23:36:57ID:TTXzFhmkつうか今のDirectGraphicsって2D描画も全部3Dポリゴンで
仮想的に対応してるんじゃなかったっけ?
0647名前は開発中のものです。
2009/02/17(火) 00:19:39ID:glRJZgChDSは2D用の高速エンジン積めばいいのに
0648名前は開発中のものです。
2009/02/17(火) 00:23:49ID:cJCVLpBA0649名前は開発中のものです。
2009/02/17(火) 00:52:59ID:lxCWJsYgそういう系統のプログラミングをしたければ、
そっちに走るしかない。
0650名前は開発中のものです。
2009/02/17(火) 06:40:17ID:98N4Azzjスプライトあるハード弄ったのはDSが初めてです
0651名前は開発中のものです。
2009/02/17(火) 11:13:59ID:7F1cTAxW0652名前は開発中のものです。
2009/02/17(火) 12:01:44ID:YdMRZ2fKline,tri,quad,texture他に何が必要なんだ?
0653名前は開発中のものです。
2009/02/17(火) 13:02:26ID:6ifU8rUt0654名前は開発中のものです。
2009/02/17(火) 13:17:46ID:CYgZ2Ha2GBAとの互換性のため
3Dがさっぱりな俺のため
0655名前は開発中のものです。
2009/02/17(火) 17:34:19ID:+gJCRER9任天堂ってやることがいちいちうざいな
0656名前は開発中のものです。
2009/02/17(火) 17:54:12ID:CYgZ2Ha2内蔵フラッシュからhomebrewを起動したい
0657名前は開発中のものです。
2009/02/17(火) 18:26:20ID:98N4Azzjあと3Dって基本片方の画面だけだからな
そのおかげでもう片方の何に使うかは皆苦労するみたいだけれども
0658名前は開発中のものです。
2009/02/17(火) 18:33:53ID:gvnaSd9Xそいつは凄いや
0659名前は開発中のものです。
2009/02/17(火) 18:41:17ID:4kZeiqJz好きなの買ってこい
GBA
GBASP
GBAmicro
DS
DSLite
0660名前は開発中のものです。
2009/02/17(火) 20:42:24ID:Wvxt0Lcqこいつでフリーズする・・・
これを使って音楽鳴らすだけのサンプル作ったら動作したのだが
実際の処理に組み込んだ途端この関数を呼ぶタイミングで固まる。
arm9から無理にアクセスしてるのが原因かと推測するが
誰か同じような目にあってない?&どうやって解決した?
0661名前は開発中のものです。
2009/02/17(火) 21:08:03ID:9keTwm9lあんたは根本的なとこで間違えている
0662名前は開発中のものです。
2009/02/17(火) 21:43:46ID:98N4Azzjテストで簡単なゲーム作ったけど問題なく動作したよ
0663名前は開発中のものです。
2009/02/17(火) 21:57:29ID:Wvxt0Lcqこの行だけコメントアウトすれば普通に動くんですが(当然音は出ないが・・・)
0664名前は開発中のものです。
2009/02/18(水) 05:35:08ID:jvIOLsTR0665名前は開発中のものです。
2009/02/18(水) 18:57:18ID:vVcHPw4LDSってタッチパネルで複数の箇所を同時押しとか出来るのか?
反応速度もそんなに良くないみたいだし。
0666名前は開発中のものです。
2009/02/18(水) 19:30:07ID:ZSKmh/q4無理不可能
ここ と ここ をタッチすると
↓ ↓
○ ◎ ○
↑
ここを押したことになる
0667660
2009/02/18(水) 20:38:59ID:FEj3mrZuarm7の機能をarm9から簡単アクセスしたい場合はirqinit使っちゃだめなんですね。
0668608
2009/02/20(金) 19:39:10ID:2DMYgGyo万が一、使用している人がいれば使用中止してください。
・左右非対称のモデルの展開がおかしい
・テクスチャの貼り付けがおかしい
の2件の問題があります。
修正の目処はついているので、近日中に修正&公開予定。
>>639
d
やってみたら意外と簡単ですYO!
0669名前は開発中のものです。
2009/02/20(金) 23:45:53ID:B1PJ8AXs操作系(背景さえ)もTGM,TAP,TIから選択可能。
http://rs314.rapidshare.com/files/142297349/NDS_TGM_20080815.zip
開発終了までにソースが公開されなかったことが悔やまれる。
NDS_TGMの作者が実験で作った音ゲー?
http://www.nicovideo.jp/watch/sm2388469
マジ、自分のニンテンドーDSで遊びたい。
やりまん氏の弟子作
DS版ベラボーマン
http://www.nicovideo.jp/watch/sm5112692
0670608
2009/02/21(土) 21:05:24ID:0EjIkX44axfcが使えなかったので、
かりんと大57364
パスはメ欄。
添付のndsはAボタンでモデルが切り替わるので
試してみて欲しい。
mikoto対応のmqoでもうまくモデルが表示される
よう変更してみた。
あとαは今ひとつ扱いに困ったので停止させてある。
なにかアドバイスがあればお願いしたい。
0671名前は開発中のものです。
2009/02/22(日) 00:07:52ID:HFKbZOsMTGMとM原の信者乙
0672名前は開発中のものです。
2009/02/22(日) 00:25:50ID:wOpJ9pB40673名前は開発中のものです。
2009/02/22(日) 07:31:34ID:VExqFJq10674名前は開発中のものです。
2009/02/22(日) 12:53:44ID:8un20adA(解像度やテクスチャの問題もあるが)
将来的にSNESとN64を完全に再現出来る携帯機が欲しいところ
■ このスレッドは過去ログ倉庫に格納されています