トップページgamedev
1001コメント378KB

【初心者】スレを立てる前にココで質問を【Part20】

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2009/09/29(火) 07:08:29ID:OO8C9kYO
疑問に思うことがあれば、スレを立てずに、まずはココで質問。
スレッドを立てる前にはローカルルールを読みましょう。
http://pc11.2ch.net/gamedev/

>>980 を踏んだ人は次スレ立てをお願いします。
【アップローダ・避難所・Wiki】
ゲーム製作技術板公式Wiki
http://wiki.game-develop.com/

ゲーム製作技術板公式アップローダ
http://gmdev.xrea.jp/

ゲーム製作技術板予備(機能停止中?)
http://yy13.kakiko.com/gamdev/

アップローダー予備
http://gamdev.hp.infoseek.co.jp/

gamdev.orgが落ちるたびにあげてみるスレ
http://pc11.2ch.net/test/read.cgi/gamedev/1107022166/
0176名前は開発中のものです。2009/11/04(水) 23:46:15ID:/Sz4AuHE
intの変数にビット単位で(32個の)フラグを立てる方法があると思うのですが,
32個ブール値を用意するのとの違いはありますか?
0177名前は開発中のものです。2009/11/04(水) 23:49:46ID:/Sz4AuHE
intというのは例えばです.

ブール値を使う方が短絡な分直感的だし,
別々の変数名を付ける方が分かりやすいように思いました.
0178名前は開発中のものです。2009/11/05(木) 00:22:54ID:5+rWBuJO
ビット単位でフラグを立てる方法の方が、メモリーの節約にはなる。
まあ、メモリーの節約を気にする必然のある環境は少ないけどな。
0179名前は開発中のものです。2009/11/05(木) 00:26:41ID:Vo34wPi1
>>177
まあブールのほうが作法としては行儀がいいと思うね。
あとintでもこんな方法で1ビットずつ変数名は付けられる。

struct
{
unsigned int a_flag:1;
unsigned int b_flag:1;
unsigned int c_flag:1;
unsigned int d_flag:1;
unsigned int e_flag:1;
unsigned int f_flag:1;
・・・
0180名前は開発中のものです。2009/11/05(木) 02:28:38ID:eJ3mIolJ
フラグを初期化したいときにintだと楽かな。
でもフラグが32個を超えると管理が煩雑になりがちw
0181名前は開発中のものです。2009/11/05(木) 09:50:10ID:KI4+w2Dm
それ1ビットずつか
ユニオン使うんじゃないのか
0182名前は開発中のものです。2009/11/05(木) 14:47:55ID:+rSTg+Ag
>>178
例えばリプレイを実現する場合なんかは、入力情報をintに変換・復元できる。
キーコンフィグを実装すればキー入力とゲームの応答の間に、なんらかしらの管理機構が挟まるからそこら辺で使えるし。

ただ、まぁ無理して使う必要は無い。ビットフィールドな列挙型も同様。
0183名前は開発中のものです。2009/11/05(木) 16:28:19ID:SNIE/4Rt
某所からの転載

>3Dゲームの制作ツール、Unityの下位グレードが無料化。
>PhysXが使えてシェーダーも40種がビルトイン、チュートリアルも完備。
>総売上が10万ドル以上の法人は除く、という条件付だけど
>大半の同人サークルは引っかからないだろうから、
>3Dゲームの頒布を考えているサークルさん、いかがでしょ。

>Unity Technologies Launches Version 2.6 of Its Platform and Makes Unity Freely Available
>ttp://unity3d.com/company/news/unity2.6-press.html

すごくよさそうなんですけど、Unityの本スレってありませんか?
チュートリアルも全部英語なので、日本語での情報がすごく少なく困ってます。
01841822009/11/06(金) 02:37:08ID:qMwKFyiY
過ぎた話題だけど安価ミスった。>>176へですな
0185名前は開発中のものです。2009/11/06(金) 13:19:49ID:hajLFQ96
シビアに高速化をやるときはキャッシュアクセス考慮するのでintに押しこんだりする
0186名前は開発中のものです。2009/11/06(金) 16:37:00ID:kEmsEn+Q
intは、整数値を扱うときに、一番最適な値にデータ型を割り振ってくれるわけだしね。
とりあえずメモリロスは起きてもタイムロスは回避できるさ。
そして現代のPCならメモリなんて使い放題に近いさ。
0187名前は開発中のものです。2009/11/06(金) 18:14:17ID:hajLFQ96
逆だよ
キャッシュサイズのこと言ってんだからintでboolの代用すんじゃなくて、intにブール値を詰め込むほうの意味
intにbool詰める・読む際に余計な演算が必要なるが、ここで必要となる論理演算は一般的に高速に処理できる
それよりも昨今のCPUのマルチコアの関係もあって、キャッシュミスヒット時のストールで待たされる時間のロスのほうがはるかに大きくなることがある
フラグ32個をint32個に入れずに1個のintに入れて処理すれば、キャッシュ内に収まりやすくなるので高速化できることがあるって話
0188名前は開発中のものです。2009/11/06(金) 22:12:14ID:HsspV1xj
おおお、勉強になる・・・
メモリをふんだんに使えるとはいえ、高速化を目指すときはより小さなサイズにしたほうがイイんだね。
0189名前は開発中のものです。2009/11/07(土) 09:17:22ID:gHawF7bm
そんな小手先の似非最適化をしたって、全体の速度は誤差程度も変わらないよ。
0190名前は開発中のものです。2009/11/07(土) 10:11:51ID:Orb9rLPQ
効果は入れる前にある程度計算可能で効果が出るところに狙って施す
実際にMTフレームワークなんかでもキャッシュサイズを意識した作りをしてるわけだがそれも否定するのか?
0191名前は開発中のものです。2009/11/07(土) 10:58:18ID:cV8cW+A4
虎の威を借りる前に、自分でやってみた結果を提示したらどうだ?
これだけパフォーマンスが変わったというのを証明すれば簡単に片がつくだろう。
0192名前は開発中のものです。2009/11/07(土) 11:14:03ID:Orb9rLPQ
トラの威を借りるな、おまえの自分の成果をだせ
バカですか?
0193名前は開発中のものです。2009/11/07(土) 11:19:22ID:gHawF7bm
つまり検証も何もしていないというのは理解できたよ。

無いものを無いと証明するのは不可能に近いけど、
ある物をあるというのはそれを見せればいいだけなんだけどね。
0194名前は開発中のものです。2009/11/07(土) 11:21:33ID:ZbG3kEz7
あのぉ、素朴な疑問なんだけど、

キャッシュヒット率を上げると速くなる
  → メインメモリと同じくらいの容量(数百MB)のキャッシュを積めば、
    HDDへのページングが起こらないレベルであれば特に最適化しなくても速くなる

って理論上は合ってる?


言い換えると、

速い・小要領 <- キャッシュ(SRAM) - メインメモリ(DRAM) - HDD -> 遅い・大容量

これのメインメモリをすっ飛ばした構成

速い・小要領 <- キャッシュ(SRAM) - HDD -> 遅い・大容量


まぁ、そんな量のSRAM積んだら、恐ろしい値段になるだろうけどw
0195名前は開発中のものです。2009/11/07(土) 11:53:36ID:Orb9rLPQ
> 無いものを無いと証明するのは不可能
>>187に速くなる根拠があるんだから、その間違いを示せば証明できる さあばんがれ
なんら反証はなく、自分の経験だけで速くならないって言い張ってるだけじゃないよね?

>>194
それだけ大容量ならキャッシュとしてヒットさせる必要は無くて、高速なメインメモリとして使えばいいので当然速くなるだろうね
SRAMの制限まではよく知らないけど、何億もするコンピュータでも全SRAM構成にしないとこをみると、何制限があってできないのかもしれないね
ただ、上にある話題はキャッシュサイズの話しかないけど、CPUがストールする要因はほかにもたくさんあるので、それらも合わせて何とかしないと効果は薄いかも
0196名前は開発中のものです。2009/11/07(土) 12:27:09ID:gHawF7bm
>>195
>速くなる根拠がある
これは否定してないよ。
単にフラグをビットで管理したところで、誤差でかき消えてしまう程度しか変わらないといっているんだけど、
ではいったいどの程度のパフォーマンスアップが期待できるというのか明確にしてくれ。
0197名前は開発中のものです。2009/11/07(土) 12:36:18ID:gHawF7bm
そもそも何を突っ込みたいかというと、最適化云々やCPUの挙動を論じる奴が、
木を見て森を見ず、局所的な部分のみが多少速くなることに悦に入って、
全体でみれば実際は何の役にも立っていないことに気がつかない馬鹿だということ。

ぶっちゃけこれが一番言いたい。
0198名前は開発中のものです。2009/11/07(土) 12:52:58ID:Orb9rLPQ
>速くなる根拠がある
>これは否定してないよ。
君が、俺が「何の役にも立っていないことに気がつかない馬鹿」と思うかどうかは、俺にとっては(きっと見てる大部分の人間にとって)どうでもいいことなので、そう思うなら勝手に思ってくれ。
速くなる根拠の部分に何の反証もないなら何の問題もない。

>>187にもあるが、「高速化できることがある」としか言っていなくて、どんな条件でも速くなるとは言っていない。
特定の条件下でパフォーマンスの改善が期待できるとは間違いなく、MTなどの市販製品でも考慮されていることは
そもそも、intにブールを入れるか、intをブールとして使うかの違いについてのレスとしては183
0199名前は開発中のものです。2009/11/07(土) 12:56:32ID:Orb9rLPQ
すいません、途中で送ってしまった。
下3行は書きかけ

>>187にもあるが、「高速化できることがある」としか言っていなくて、どんな条件でも速くなるとは言っていない。
特定の条件下でパフォーマンスの改善が期待できるとは間違いなく、いろいろな情報からも、MTなどの市販製品でも考慮されていることからも、十分確かと考えていいだろう
そもそも、intにブールを入れるか、intをブールとして使うかの違いについてのレスとしては>>183でなんの問題もない。
0200名前は開発中のものです。2009/11/07(土) 15:58:19ID:M1hO6X0P
ハードウェア側のことを考えて
32bitの環境なら32bit型をなるべく使うのは結構重要なことなのに
「役に立ってない」と完全否定できる奴はすごいな
0201名前は開発中のものです。2009/11/07(土) 16:12:38ID:vkeQqaC1
あえてそこまでストイックになる必要がないってだけじゃないの? 少なくともゲーム製作を語る上では。
お互いに相手の言い分もわかってるだろうに、わざわざ議論始めなくてもいいよ。
0202名前は開発中のものです。2009/11/07(土) 16:25:32ID:Orb9rLPQ
まあ適材適所で必要なときだけ必要な個所でやればいいと思うよ
最適化ってそういうもんだし
なんにしてもしょうもないやり取りでスレ汚してすまんかった
02031762009/11/07(土) 23:44:19ID:Xs7tndnq
レス有難うございました.

>179
自分の勉強不足でしょうか...
intサイズの変数が並んでいるように思うのですが,
1ビットずつの命名が実現できているのでしょうか?

>180
>182
boolで構造体を作って,memset, memcpyで操作するのと
違いが出にくいように思いました.
無理して使う必要はない,と言うことであればそれまでなんですが.

>200
個人的にこの言い分がしっくり来ました.
他のいくつかレス頂いた分も,これに終始すると思いますし.
また,潜在的な疑問でしたが,
必要な真偽値がきり良く32個になることなんてまずないから,
シビアに弄ってる一方で,ビットの未使用分が気になっていたので.

有難うございました.
0204名前は開発中のものです。2009/11/07(土) 23:49:19ID:pD8Hg5wM
> >179
> 自分の勉強不足でしょうか...
ビットフィールドだからC言語だね。
0205名前は開発中のものです。2009/11/07(土) 23:53:56ID:Xs7tndnq
>204
勉強不足でした...;ありがとうございます.
0206名前は開発中のものです。2009/11/08(日) 10:28:20ID:jVF9AtCS
結局何が聞きたかったのかよくわからない質問だったな
0207名前は開発中のものです。2009/11/08(日) 10:56:38ID:3Syd0d+d
ここで激論を戦わしている人達は、アセンブラを知っているの?

CPUの汎用メモリは数個程度だから、ある変数をメモリにロードしても、
そのメモリに別の変数がロードされたら、またロードし直さないといけない
結局の所、メモリの使われ方は、アセンブラを見ないとわからんよ

マイコンのプログラムなんて1行ずつ、どのメモリを使うか確認しているんだから
0208名前は開発中のものです。2009/11/08(日) 11:11:15ID:5bB/LHM4
DOS時代とかデバイスドライバ、マルチメディア系の最適化ではなく、
マイコンを例に挙げてくるあたり、頭の悪さを露呈しているのがよく分かる。
0209名前は開発中のものです。2009/11/08(日) 11:24:07ID:jVF9AtCS
そういえば、64bitになってから拡張された上位分や、MMXやらSSEで増えたレジスタって汎用には使えないのかな
register指定でその辺のも使ってくれれば、結構な数がそろうと思うんだけど
Itaniumでも使えばもっとレジスタ使えるんだろうけど、Itaniumマシンはサーバ以外で使われそうにないし
0210名前は開発中のものです。2009/11/08(日) 11:46:34ID:ENtK6awO
>MMXやらSSEやらで増えたレジスタ
浮動小数点のレジスタをまんま使用してるんじゃなかったっけ?
0211名前は開発中のものです。2009/11/08(日) 11:48:04ID:u9PsEAnz
Itaniumを使わなくても、EM64TやAMD64で汎用レジスタの数が増えているんだが、
いったい何を言ってるんだ?

しかも今の時代、コンパイラでregister指定をしても、
逆に無駄が増えるか無視されるかという結果にしかならない。
0212名前は開発中のものです。2009/11/08(日) 12:29:07ID:jVF9AtCS
>>210
ああ、共通で使ってるんだっけ
なんかそんなのを聞いたことがあったのを思い出したよ

>>211
増えた汎用は汎用で使ってくれればそれでいいんだけど、
Itaniumにすれば汎用レジスタがもっとたくさん増えるだろ?
それだけの話だよ

>しかも今の時代、コンパイラでregister指定をしても、
>逆に無駄が増えるか無視されるかという結果にしかならない
これはよく聞く話だけど、実際どうなるかはコンパイラ依存だよね
無視されるならまだいいと思うけど、無駄が増えるって具体的にどんなコードが吐かれるの?
0213名前は開発中のものです。2009/11/08(日) 12:41:13ID:BFD52Z6T
PCをターゲットにするのに今時アセンブラなんてあんまし関係ないと思うが。
キャッシュ操作を命令で出来れば早くなりそうだな。
0214名前は開発中のものです。2009/11/08(日) 14:38:24ID:ENtK6awO
キャッシュは自前で操作したいよな。つ〜か一体、どんな状態になってるんだか。
0215名前は開発中のものです。2009/11/08(日) 18:54:01ID:2FC+r2WV
どこで質問すればいいのか迷った、
というか所謂初心者なのでどう質問すればいいのか上手く説明できませんが質問させてください。

よくある戦略SRPGで、敵(CPU)の行動でこちらの敵に向かわせる際、
川や山、障害物など通れないマス目を避けて進ませる方法が上手く思いつきません。
さすがに大まかすぎて回答してもらうのは難しそうなので、
そういった、AIというのでしょうか、CPUの行動させかたを上手く解説しているところ、
もしくは参考にできるような題材やリンクはありませんでしょうか?
0216名前は開発中のものです。2009/11/08(日) 18:56:42ID:49+a80li
自分もちょうどそれが気になってたところ・・・
0217名前は開発中のものです。2009/11/08(日) 18:58:32ID:9QV4n3ah
>>215
http://www.jyouhoukaiseki.com/index.html
こことか。
0218名前は開発中のものです。2009/11/08(日) 19:02:24ID:hbP1+XQi
オライリーの「実例で学ぶ ゲームAIプログラミング」という書籍に経路探索が出てたと思う。
とりあえずマンハッタン距離、経路探索くらいのキーワードで調べてみるとか。
0219名前は開発中のものです。2009/11/08(日) 19:07:17ID:2FC+r2WV
10分も経たないうちに回答してくださってびっくらこいた

>>217-218
ザッと見たところ、どちらも参考にできそうな説明がされておりました。
あとは自分で考えて発展させていけばなんとかなりそうです、どうもありがとうございます。
0220名前は開発中のものです。2009/11/08(日) 19:07:28ID:hbP1+XQi
抽象的な概念でいえば、グラフ理論を学べばできるようになると思う。
0221名前は開発中のものです。2009/11/10(火) 18:19:12ID:PeiW8ICh
何だかわからんが、議論の経過は華麗に無視して結論。

・boolean型のフラグは、byteで持つよりbitで持った方が
全ての面で優れています。bitで持つようにしましょう。
操作が煩雑なら、std::bitsetやboost::dynamic_bitsetを使いましょう。

以上終わり。
0222名前は開発中のものです。2009/11/10(火) 18:54:49ID:m+B8PjQ8
>>221をかいつまんで説明すれば、億万長者が一円玉を拾い上げるのと同じだということ。
腰を曲げるぶんだけ損しているかもしれない。

以上終わり。
0223名前は開発中のものです。2009/11/10(火) 18:56:33ID:iR0qXcSq
全ての面で〜などと簡単に言う人間の言葉は、全ての面で信用ならねぇ
0224名前は開発中のものです。2009/11/10(火) 19:02:45ID:kkW4R7qN



ゲーム製作でお約束の豆知識


何の判定でもいいが、フレーム単位でするのは御法度である。
何らかの理由でフレームとしての描画が遅れると判定も遅れるからである。

普通は、タイムスライスなどの時間判定で行う。
時間なら、描画が行われていなかろうが何だろうが
時間が来れば強制的に判定するからだ。
これは兼ね合いの面も強いのであまり多用すると処理速度に悪影響を与えるが
よりクリティカルなところでは時間で判定しないとロクなことにならない。

0225名前は開発中のものです。2009/11/10(火) 19:12:03ID:C6i0KrhP
ttp://www.wacharo.net/Tetris/Tetris.jsp

ここを参考にしてJAVAでテトリスを作るんですが、
アプレットではなくてアプリケーションで作成したいと思っています。
ですがアプレットとアプリケーションの互換性などが全く分かりません。

作ってからアプリケーションに簡単に変換することができるんでしょうか。
ためしに上記のサイトのレベル1と書かれてる部分からextends Appletなど抜くと
他も使えなくなる部分が出てくるんですが。
アプリケーションでJARファイルにして実行できるようにしたい場合は
他のサイト参考にしたほうがいいんでしょうか?

見ておいたほういいサイトなどあれば紹介お願いします。
0226名前は開発中のものです。2009/11/10(火) 19:26:28ID:33hrI6K4
VC++で、directX(dxlib)を使っています

リフレッシュレートに左右されぬようFPSを固定する技法を使うと、
等速直線運動しているだけの画像がカクカクとスムーズでない動きをしています
理由は理解しているのですが、明確な解決方法がググってもどこにも載っていません
(移動距離をリフレッシュレートによって変更するという技法はありますが、その他全てを変更するのは無理そうです)

これはつまり、カクカクなのはしょうがないと言うことなのでしょうか。
東方等大手も仕方が無いこととして適当に諦めてるのでしょうか。
それとも、何か解決法(orマシになる方法)などあるのでしょうか。
(dxlibを使っては不可能なのでしょうか)

よろしくお願いします
0227名前は開発中のものです。2009/11/10(火) 19:40:07ID:iR0qXcSq
>>225
ググったら、こんなのあったけど
http://wisdom.sakura.ne.jp/system/java/awt/Gjava33.html
0228名前は開発中のものです。2009/11/10(火) 20:10:08ID:WSBQhFY6
経過フレーム数ではなくて、経過時間でアニメーションするように変更する。>>226
0229名前は開発中のものです。2009/11/10(火) 20:20:35ID:33hrI6K4
>>228
ありがとうございます。
すると、ほとんどのゲームソフトはそういった仕様になっているのでしょうか。
自分はカクカクなのが許せないと言うよりは、大多数の手法と同じ手法を用いたいのですが……。
0230名前は開発中のものです。2009/11/10(火) 20:30:16ID:WSBQhFY6
リフレッシュレートに依存しないとなったら、ほとんどがそうだろ。
0231名前は開発中のものです。2009/11/10(火) 21:55:03ID:1FCcgIbf
>>215-220
オライリーの「ゲーム開発者のためのAI入門」とその続編の
「実例で学ぶ ゲームAIプログラミング」

ゲーム・プログラマーで、この2冊を読んでいない人はやばいよ。早く読みな

>>225
アプレットはブラウザの中で実行するから、色々と面倒な設定をしないといけない
それを考えれば、アプリケーションの方がずっと簡単

新たにアプリのプロジェクトを立ち上げて、ソースをコピーすればよい
0232名前は開発中のものです。2009/11/10(火) 23:44:40ID:VPqZVDvF
>>227
正直アプレットとして使う必要が無いので、
アプリケーションでのみの動作を考えたいです。
そしてそのリンクの中身ですら難しいと思えるレベル・・

>>231
それやってみたらpublic void initの中身のsetSizeやらcreatImageやら
よくわからない所がエラーででててMainで未定義です、とエラー文がでます。
initをmainに書き換えても同様のエラーなので構造が分かってないからでしょうか。

丸写しするつもりはないんですが課題の一部なので、
流用する部分が多いかもしれません。

調べてみるとアプレットはinitで定義してアプリはmainという風な理解の仕方と
どこかで見たような気がするんですが。

ocn規制されたのでこの書き込みは代行です。暫く出て来れません。
0233名前は開発中のものです。2009/11/11(水) 11:40:51ID:G3oUTTn4
>>232
これを機にjavaの基本をもう少し抑えといたら?
自分の不足している知識を、すべて質問で補って課題を済まそういうのは、ちょっと無理があるかな
エラー文が出てるなら、そこから調べていけばいいと思うよ
0234名前は開発中のものです。2009/11/11(水) 15:48:53ID:/xYUhSYO
>>228
過去のものまで含めて大多数ということならフレーム依存でカクカクは黙認が大多数と思う
ただみんながやってるからという基準での選択は意味がない
何事も自分のスキルとターゲットにするハードウェアのスペックで決めるべき
0235名前は開発中のものです。2009/11/13(金) 01:53:49ID:tQmPFAh8
作ったゲームのテストプレイとか頼むスレってあります?
0236名前は開発中のものです。2009/11/13(金) 02:25:24ID:zTJfdoAT
評価スレはあったけど今はdat落ちしてますね。
ttp://pc11.2ch.net/test/read.cgi/gamedev/1010018331/

まぁあってもあまり多くのレス貰えない過疎スレなので、
こことか、該当ジャンルの板の方がいいかもしれませんorz
02372352009/11/13(金) 05:33:07ID:tQmPFAh8
orz
0238名前は開発中のものです。2009/11/13(金) 17:54:50ID:fpJGYtuM
すみません
テクスチャの作り方についてきいていいですか?
0239名前は開発中のものです。2009/11/13(金) 18:03:58ID:TqNtTKtH
だめです
0240名前は開発中のものです。2009/11/13(金) 18:26:29ID:fpJGYtuM
枝葉のテクスチャで
マスクを綺麗に抜いたりするのって
色域選択してあとは手作業しかないんですか?
一番効率が良くて綺麗にできるやりかたを教えてください。
例えばこういうもの

http://gmdev.xrea.jp/
http://gmdev.xrea.jp/
0241名前は開発中のものです。2009/11/13(金) 19:02:12ID:WgqD7mt4
それはペイントソフトの使い方を聞いてんだよな?
使ってるペイントソフトのスレを見つけて聞いた方がいい答えが返ると思うよ
0242名前は開発中のものです。2009/11/13(金) 19:22:26ID:fpJGYtuM
>>241
そうです
フォトショスレですね
すいません
0243名前は開発中のものです。2009/11/13(金) 22:34:45ID:kkD5eRVx
3Dゲーム製作をしようと思って入門書を調べてみたのですが
DirextXプログラミングという本もあれば
XNAゲームプログラミングという本もあって混乱してしまいました。

調べてみたところ、XNAもDirectXを利用しているようなのですが
この2つは具体的にどう違うのでしょうか?
0244名前は開発中のものです。2009/11/13(金) 22:39:26ID:FHBMJcaz
DirectXのラッピングライブラリじゃねえの
0245名前は開発中のものです。2009/11/13(金) 22:44:09ID:2HHNC3Ss
XNAはC#ベースでPCだけでなくXBOX360でも動く。つか360用の開発環境をPCで用意できる。
DirrctXはC++で、主にPC上で動く。


で、いいのかな?賢者頼むw
0246名前は開発中のものです。2009/11/14(土) 02:02:42ID:4nbUzPF2
もっと正確に言えば、単なるフレームワークである。

だから、移植すればPS3でも動く。
.NET製なので、移植もそんなに大変な作業にはならない。

が、誰がやるのかといえば誰もやらない。
0247名前は開発中のものです。2009/11/14(土) 03:07:25ID:+oBfM/V6
質問内容と違うが、C#かC・C++の入門書が先じゃないかい
0248名前は開発中のものです。2009/11/14(土) 03:49:47ID:ddeBPmta
まて、落ち着けw
今まで3D以外やってきて、3Dに入門する可能性が残されてる。
つかイチイチ言語初心者の相手なんてしてられねーっつーのwww!
0249名前は開発中のものです。2009/11/14(土) 09:19:10ID:LiLn1POm
使ってるレタッチソフト次第だと思うけど
元の素材(写真)の出来次第じゃ投げ縄ツールのがマシだったりするし
白黒マスクで抜くのか8bitアルファャンネルで抜くのかにもよるけど
綺麗に作ろうとすると手作業のゴミ取りとか描き足しはどうしても
避けられないと思う

良い素材がないときは結局手描きが一番早いとかいうことも多々ある
0250名前は開発中のものです。2009/11/14(土) 09:25:37ID:LiLn1POm
スマン。>>249は専ブラの操作ミスだ。
0251名前は開発中のものです。2009/11/14(土) 11:57:32ID:QjogauEl
>>244-248
ありがとうございます
今のところXbox/PS3上での動作に興味はないので、
XNAではなくDirectXを学んでみようと思います。
C#やC++は少し触ったことがあるので、そちらも学び学び・・・
0252名前は開発中のものです。2009/11/14(土) 17:53:08ID:puaJRA1v
また、「DirectX」って言うのはやめたほうがよい。

DirectXはAPIの集まりに対する呼称であって、APIではないからだ。
例えば、3D描画用のライブラリ群は「Direct3D」だし
ゲームパッドの入力などに対するライブラリ群は「Direct Input」

他にも「DirectDraw」などあるから、単にDirectXではどれを指しているか分からないし
これら全部違うのでアドバイスも異なる。
0253名前は開発中のものです。2009/11/14(土) 18:04:13ID:/y4jCwvj
いまどき DirectDraw はないだろ…。
技術が周回遅れのオジサンがエラそうにアドバイスするカオス空間ですね。
0254名前は開発中のものです。2009/11/14(土) 18:08:34ID:xd/jrl4G
ゲーム作りたいだけならXNA一択だろ。
DxLibとか使うにしても、XNAでやる方が7倍は楽。
0255名前は開発中のものです。2009/11/14(土) 18:10:25ID:6uCj2w5Y
未だにDirectDrawですが何か?多関節の勉強をやってる最中ですが何か?
つ〜か、多関節がまともに扱えないうちからいきなり3Dに入っても、
まともなモノが仕上がるとは到底思えないんだが。
0256名前は開発中のものです。2009/11/14(土) 18:15:19ID:puaJRA1v
DirectDrawは映像分野でも現役なのだが。
0257名前は開発中のものです。2009/11/14(土) 18:22:22ID:N74N9akW
今からやる奴に「DirectDraw」なんて言ってもピンと来ないだろうね。
どうせなら初心者向けに話そうよ。
0258名前は開発中のものです。2009/11/14(土) 18:28:05ID:xd/jrl4G
なんで多間接にそのような怖れを感じているのかわからない。
0259名前は開発中のものです。2009/11/14(土) 18:38:51ID:6uCj2w5Y
現実問題として、多関節すらまともに扱えて無いゲームの方が多い気がするんだが?
0260名前は開発中のものです。2009/11/14(土) 18:40:37ID:sezTFw1m
具体的には?
多いと言うからには、まずはそれなりの数を挙げてくれ。
0261名前は開発中のものです。2009/11/14(土) 18:51:03ID:hX72KrQK
DirectXって言ってもいろいろあるしー
何がしたいの?ポリゴン動かしたいの?
だったらDirectXより、3Dの基礎とか、六角大王とかBlenderの方が先じゃね?
場合によっちゃHSPでDirectX通してポリゴン表示できるよ。
0262名前は開発中のものです。2009/11/14(土) 19:37:19ID:6uCj2w5Y
>>260
お前は今までに遊んだクソゲーの事をまともに覚えているのか?
そんな余計なことに脳みその領域を使うぐらいなら、
もっと有意義な事に使った方がよっぽどかしこいと思うのだが?
0263名前は開発中のものです。2009/11/14(土) 19:48:06ID:sezTFw1m
いいわけが酷いな。
多い気がするだけで、まったく一つも思い浮かばなかったと言うことだね。
どれだけ頭が悪ければ気が済むんだろう?
0264名前は開発中のものです。2009/11/14(土) 20:14:50ID:w1wncr+c
多関節の扱いがナニなゲームが多数あろうが無かろうが、DirectDrawが現役かどうかには何の関係もないだろうが
バカじゃないの?
0265名前は開発中のものです。2009/11/14(土) 20:18:34ID:N74N9akW
「DirectDrawという呼び方がバリバリ現役だったころ、多間接で挫折し、今はこのスレで管を巻いてる」
まで読んだ。
0266名前は開発中のものです。2009/11/14(土) 20:21:52ID:hX72KrQK
DirectX8時代にDirectDrawとDirect3Dが統合されてDirectGraphicsになったことだけは覚えてる。
0267名前は開発中のものです。2009/11/14(土) 20:33:10ID:w1wncr+c
というか、いまどきは2DやるのもD3Dでやるんだと思ってたんだけど違うの?
わざわざDirectX7や8で初期化してDDraw?
今のVGAはポリゴンあほほど書けるんだからその方がパフォーマンス出る気がするんだけど
0268名前は開発中のものです。2009/11/14(土) 20:35:04ID:6uCj2w5Y
>>266
DirectX9実践プログラミングという本を読んだ所、
何故かDirectGraphicsの事ではなく、
Direct3Dの事が書かれていたわけだが・・・
0269名前は開発中のものです。2009/11/14(土) 20:37:11ID:vhlEhFCh
最先端技術おいとくね( ゚∀゚)つDirect2D
0270名前は開発中のものです。2009/11/14(土) 20:48:29ID:N74N9akW
>>268
Direct3Dに言及するのは結構だが、
ttp://msdn.microsoft.com/ja-jp/library/cc351648.aspx
DirectGraphicsに触れられて無いなら、お手元の本は今すぐゴミ箱へ。本を買いなおすか、
ttp://www.amazon.co.jp/%E6%9B%B8%E7%B1%8D%E7%89%88-DirectX9%E5%AE%9F%E8%B7%B5%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0-I%E3%83%BBO-BOOKS-O%E7%B7%A8%E9%9B%86%E9%83%A8/dp/4875934998
初質スレから出てけ。
0271名前は開発中のものです。2009/11/14(土) 21:04:43ID:hX72KrQK
>>268
すまん。どうも最近のはDirectX Graphicsというカテゴリの中に、
以下のサブカテゴリーが存在するようだ。

http://msdn.microsoft.com/en-us/library/ee663301(VS.85).aspx
Windows DirectX Graphics Documentation (August 2009)
In This Section
Direct3D 11
Direct3D 10
Direct3D 9
DXGI
HLSL
Tools
0272名前は開発中のものです。2009/11/14(土) 23:30:34ID:hqtAYuoF
1文字の幅が固定じゃないフォント(画像に描かれている)
って、どうやって描画すればいいんでしょうか?
画像を切り取る領域の計算が、固定幅の素材のように簡単には出来ません。

PictBearで各文字の左上の座標を確認し、
文字と画像の切り取る領域の対応を
ソースコード上でハッシュテーブルに登録するということをしていますが、面倒すぎです・・。
(せめて、クリックした座標を自動的に記録とかしてくれるソフトがあれば・・)
もっと賢い方法があったら教えてください。
0273名前は開発中のものです。2009/11/14(土) 23:43:03ID:mb0+kb1q
>>272
環境を詳しく書かないとアドバイスできない
0274名前は開発中のものです。2009/11/14(土) 23:44:56ID:N74N9akW
WindowsのGDIやDrawTextならDT_CALCRECTを指定して、
矩形領域を取得する事ができる(描画はしない)
0275名前は開発中のものです。2009/11/15(日) 00:16:31ID:c06vQeDJ
GetTextExtentPointAを使えば良いんでね?よく分からんけど
0276名前は開発中のものです。2009/11/15(日) 00:27:49ID:c06vQeDJ
GetTextExtentPoint32の方が良かったみたいだな。まあ、無意味かもしれんけど。
■ このスレッドは過去ログ倉庫に格納されています