【初心者歓迎】スレを立てる前にココで質問を【Part9】
1 :
名前は開発中のものです。 :
2005/07/13(水) 15:50:01 ID:wsXFpeH0
他にまとめるものがあったら記述よろしく。
早速相談 DirectXでD3DXCreateTextureFromFileEx()他 でカラーキーを指定して色抜きをしたいのですが、 画像ファイルのフォーマットが16bit未満のだと透明になりません。 これってこういうものなのでしょうか?
>前スレの997 何処にも届ける必要は無いぞ。 そ〜ゆ〜アイデアで特許取ってるヤシがいるなら話は別だが、 あいにくとそんな特許は無い。どっかのバカが、「このアイデア には著作権があるから漏れに許可を取れ」、とかほざいてバカを さらしまくっているが、そんなアフォは気にするな。 鼻で笑ってやれ。
著作権の切れた創作物を、電子化すると 電子化した行為には著作権は発生しないの? そういうものって電子化するさいに、振り仮名振ったり、 注釈のリンクつけたりして、新たな著作物として 守っているようにも見えるけど。
>>8 それは、法的な問題ではない。しかし、そうした道義的な配慮は大事だ。
物事は法律だけで動いているわけではないからな。
>>8 著作物を電子化しても著作権は認められません。
著作権は原則として表現を保護するものであり、媒体が違っても、
表現されている内容が同じならば複製にあたります。
但し、電子化した作品が新たに表現されたものであると、
二次的著作物として著作権が認められます。
ここでいう表現は、振り仮名や注釈など、作品に付随する情報ではなく、
作者自身(この場合は電子化した者)の表現を指します。
例えば、著作権が切れた文学作品をサウンドノベル化したならば、
その脚色や絵、音声などが作者自身の表現にあたります。
忘れてならないのは、著作権が切れても、著作人格権は失われないことです。
電子化した作品が二次的著作物ではなく、原作の著作者も望まないと思われる改変の場合、
著作物の同一性保持権の侵害となります。
>>6 挙げられるだけ挙げてみる。
1、 256色だとpixelのビットではなくパレット番号で指定する時代があった。
その名残で、256色だとパレット番号で指定しないとダメかもしれない。
2、 サーフェスに展開した後のビットパターンを元に指定する必要があったと思う。
画像ファイルとサーフェスのフォーマットが異なる場合は変換が入るので
思っているものと違うビットパターンになっているかもしれない。
特に16bit色の場合は、16bitの分配がハードウェアに依存するので
きちんと調べないとハマる。
3、 D3DXライブラリの仕様かも。
どうラップしてるか知らないのでこの可能性も捨てられない。
ブロック崩しのボールとパドル、ボールとブロックの当たり判定は 矩形と矩形として判定するのが一般的なのでしょうか これだと大きなボールだとボールの矩形の角が視覚上ブロックに当たっていないのに 矩形同士だと当たっていると判定されてしまいます 矩形と円の当たり判定をする方法はありませんか
>>13 色んな方法あるだろうけど、ぱっと考えて思いつく方法。
矩形の位置をテンキーの5として、その周囲の領域を分割。
12346789はそれぞれ対応する領域と考える。
円の中心が、その領域のどこに含まれるか判定する。
2468の場合は矩形の辺と円の中心の距離を比較。
1379の場合は矩形の角と円の中心の距離を比較。
こんなんで出来るんじゃない?
ブロック崩していどなら、ビットマックの重なりで当たり判定でもいいでない。 そうすれば、どんな障害物でもできる。
ビットマックって何だよ・・・orz 新しい100円バガーか? (自ry
ビットマックワロス
>>13 いわゆる「当たり判定」の問題は昔から悩ましい問題で。
しかも3Dになって余計加速したとか。
論理的におかしいはずのものが、ゲームの中の一瞬で行われると
案外気づかなかったりする。
矩形の角の何も無いところで当たっているように見えたら、
ボールの当たり判定を、見た目よりもちょっと小さくすればいい。
そのあたりはテストしながら当たった瞬間を睨み付けるように観察して
一番自然なサイズの矩形を探してください。
ちなみに14みたいにやると重くなる元なのでお勧めしない。
現在のマシンなら影響が出る処理ではないと思うが、
詰め込みだすと意外なところで躓く。
>>13 矩形を対象の円の半径だけ膨らませて、
対象の中心点がその矩形の中に入るかで判定する。
より厳密な当たり判定が必要なら、角が丸い矩形との当たり判定をとる。
例えば、
・二個の矩形(左右・上下にだけ半径を膨らませた矩形)。
・四個の円(矩形の各頂点におかれた対象の半径と同じ半径の円)。
このどれかで対象の中心点が図形の中にあったら重なっている。
>>14 >>15 >>18 でも構わないし。判定方法を組み合わせることも出来る。
好きな判定方法をどうぞ。
ブロック崩し頑張ってくれ。
機械語から・・・・・・・・・・・orz
>>20 のような質問は、定期的に書き込まれるね。
初心者っていっても、プログラミングをやりたいのか、ゲームをやりたいのかで違うんだけど…。
とにかくゲームが作りたいだけだったら、NScripterとかかな。この板にスレもあるし。
プログラミングも囓りたいんだったら、HSPがお勧めかな。VBも個人的にお勧めしたい。
C言語はまだ関わらない方がいいかも。
CでWindowsのゲームを作ろうとすると、色々と面倒な初期化を勉強しないとだめだし。
>>20 まず、何がしたいのか教えてもらえないかい。
ゲームを作りたいのならば、どんなゲームが作りたいのか。ジャンルは?
プログラミングをしたいのなら、その目的は? 趣味なのか、プログラマーになるため?
単純にゲームを作りたいだけならツクールや、フリーで公開されているツールがある。
ジャンルによっては、一番簡単に素早く作ることができる。
プログラミングを楽しみたいのなら、最初は HSP がお勧め。
なにより入門用の言語だし、簡単に始められて、プログラムした結果もすぐに見られる。
ただ、本格的なプログラミングにチャレンジしたいのなら、別に C 言語から始めても構わない。
C には初心者向けの資料も沢山あるから、独学でも十分学べると思う。
ただ、C でゲームを作るとすれば、
>>22 も言ってるように、C 言語以外の知識も必要になる。
そこで混乱するかもしれないが、まあ、要するにやる気次第だ。
まずは、HSP や C 言語、他のツールや言語などの入門用ページを回ってみて、
自分が興味が持てて、出来そうなものを探してみてはどうかな。
ちなみに私の場合は、最初に触れた言語はロゴライター(Logo)。
次は N88BASIC でした。古くて参考になりません……。
NSscripterってのを見てみましたが、要するにサウンドノベルツクールみたいなもんなんでしょうか?
ゲームを作りたいのですが、コンストラクション用のソフトではなく隅々までオリジナルでやってみたいと考えてます。
ttp://f4.aaa.livedoor.jp/~jiscald/ こちらのサイトさんみたいな感じでゆっくりとやってこの板で発表できるようになれたらと思ってます。
それにはプログラムの勉強をしないとだめだと考えたのですが、
調べるにもどれからどうしていいかわからなかった訳で。
>>24 いくつかサイトみてるんですが、実際の説明をみてもどちらも未体験ゾーンで判別がつかないんですよね。
C言語の方が幅が広いけれど難しいというのはわかりました。
HSPとC言語ってまったくの別物なんですか?
HSPで簡単な物になれて、C言語で難しい物っていう流れにはならないですか?
素人目で検討違いな事を聞いてたらすいません。
ロゴなつかしいな
めちゃくちゃに斜め線引かせて画面を埋め尽くしたりして遊んだもんだ
>>26 全くの別物
プログラミングに慣れるのが目的ならそういう流れも良いと思う
その気があるならcygwinかmingwかBCC辺りをインストしてPATH設定して
いきなりC言語を触ってみるのも良いと思うけどな
>>27-28 どもです。
とりあえずC言語の方は敷居が高いみたいなので
HSPで何か作れるようになってから考えてみようと思います。
どうもありがとうございました。
30 :
29 :2005/07/15(金) 00:09:53 ID:8je2/qIm
セルロンとペンティアム4で同じ周波数なのに、なんであんなに値段違うん?
インテルの戦略。
>>33 実際は変わんないの?じゃあセルロンのがお得やん。
板違い
>>34 基本的に、値段の高いCPUの方が処理速度は早い。
同じ周波数でも、特定の処理を行う場合に速度差が出る。
積んでるキャッシュメモリーとかも違う品。
詳しい話はハード板に逝って由。
STG技術スレを見ていると、結構な人たちが御自分の制作経験について語っておられるが、 にもかかわらず巷で良質なSTGが氾濫しているわけでもないのは何故でしょうか?
フリーウェアでそこそこ遊べるシューティングなら、 探せばすぐに見つかるよ。
まあ、それ以上に駄作シューティングが氾濫してるわけだが・・・
>>37 プログラム技術とゲームデザイン技術は別物だから。
>>40 むしろ逆、デザイン能力にプログラミング能力が追いついてないだけ。
何しろこの業界、プログラマーは使い捨てだから、腕の良いプログラマー
はなかなか育たない。
>糞ゲーってのは作ろうと思って作るもんじゃない、気が付いたら作っているんだ。
>>37 部分的に出来の良いゲームなら、シューティングに限らず世間に氾濫してるだろ。
>かつてアメリカのSF作家カート・ヴォネガットが、あるSF大会のスピーチでこう言いました。 >「SFの99パーセントは、クズであります」 >会場内のファンや他の作家たちが驚いてシーンとなった直後、彼は言い添えました。 >「この世のものの99パーセントは、クズなのです」 >1%の「価値あるもの」を生み出すためには、99%のクズが必要なんです。
土日スレは消えてしまったのですか
お聞きします。 タクティクスオウガのようなソフトをHSPで作ることは出来ますか? 出来るとしたら、どの程度のクオリティになるでしょうか? これからプログラミングをはじめるつもりで、 最終目標にタクティクスオウガのようなソフトを作る、としています。 HSPで良い作品がもし望めないなら、オススメの言語お願いします。 大学生で時間はたっぷりあります。
>>49 HSPで基本的にできないゲームはないけど、
時間があるならC++、C#とか本格的な言語を学ぶのもいいかもね。
今のうちなら学割で買えるし
まあとりあえずHSPやってみれ。
>>50 返信ありがとうございます。
HSPで学んだ知識やスキルは他言語でも活かせますか?
ループしてる・・・w
>>51 俺は
>>28 の逆だったけど、HSPに限らず他言語の知識は無駄にならないから
あんまり気にせず頑張れ。
質問しても良いでしょうか。 VC.net+DirectX8でゲームを作成している者なのですが、 作ったものを知り合いにやってもらった所 mfc70.dllとmsvcr70.dllが無いマシンでは起動しないと言われました。 mfcのクラスは一切使用していないので、なぜこれらdllが必要なのか分かりません。 dllも一緒に入れてしまえばいい話ではあるのですが、 出来れば配布する容量は少なくしたいのです。 何故これらdllが必要なのか、そしてこれらを入れずにどうにかする方法があるのか、 教えていただけないでしょうか。
55 :
49 :2005/07/20(水) 00:09:03 ID:ZNdxrNDy
56 :
名前は開発中のものです。 :2005/07/20(水) 14:51:23 ID:V0xHsjXQ
あれ、ここの板に音ゲー関連のスレなかったっけ?
>>54 一般的にはスタティックリンクとダイナミックリンクがあり、
スタティックリンクを選べばDLLは不要になる…、
と、まぁ、教科書的にはそうなのですが、
どこで使っているのかすら分からない状況で
要求できる物ではないような気がする。
なんでだろうね。
ソースを見せてもらえると分かりやすいのだが、
それを要求するのもさすがに酷な話だな。
とりあえず、最小単位のプログラムを作ってみなよ。
それで混入しなければ少しずつ進んで犯人を突き止めるべし。
インポートライブラリをスタティックリンクしてるってオチじゃね?
59 :
54 :2005/07/22(金) 04:27:55 ID:GD0/EaTX
>>57 >>58 返答ありがとうございます。58さんの指摘がジャストミートだった様子。
ヒントに色々調べてみた結果、
mfc70.dllの静的ライブラリはmfc70s.libのようなのでこれをスタティックリンクして解決。
msvcr70.dllはdllには必ずダイナミックリンクされる、と。
実はゲームに使うリソースをdllに固めていたんで、そのせいみたいですね。
こっちは今のところ静的ライブラリが見つからなかったので、
dllに固めるのを止めようかな、と思っています。
実は既に結構大きなプロジェクト構成になっていて、
切り離して調べるのも難しい状況でした。助かりました。
でも、スタティックリンクしたんじゃあdll入れるのと容量殆ど変わらないですよね…意味無ぇ。
60 :
名前は開発中のものです。 :2005/07/23(土) 17:11:23 ID:YYaqMdh2
無料のFLASH MX 2004みたいのってありませんか?
>>61 ありがとうございます。コレでゲーム作ってみようと思います。
あげてしまってすいませんでした。
RADEON X700proで動いたプログラムをGF6600GTで動かしてみたら colorkeyがサポートしてないって出るんだけどホントにしてないの?
何をやったときの話なのか、前提条件を全く説明しない理由は?
今から死ぬお前がそれを知る必要はない
殺人未遂で逮捕
とりあえずなぜメーカに聞かないのかと
ホアーーッ! ホアアーーッ! ホアアーーッ!
叫びたいのはわかるが・・・
70 :
63 :2005/07/24(日) 15:22:22 ID:S8D6fimo
>>64 ソースみたらDDrawのcolorkeyを使ったところだった。
HALでもHELでもダメみたいだからやっぱDDrawは見捨てられたかな。
D3DのcolorkeyはOKだったけどわざわざ書き直すのメンドクサいから
RADEON使うかな・・
HELでだめってことあるの? 全然エミュレートしてないじゃん
そのプログラムを書いたやつがヘボかっただけだろ。 誰が書いたんだ?あ、63か。すまん。
>>71 HELでもデフォではエミュレート無効になってる機能あるよ。
Capsいじって有効にできるけどな。
そうしたらDirectDrawを使っている昔のゲームが軒並み透過出来ないことになるぞ。 いくら見捨てられたからってそんな馬鹿なドライバを作るはずがないだろう。 自分のプログラムのミスを環境のせいにしている典型的なアホ。
>>71 HALがエミュレートできるフリをしてて、
処理をもらったとたんコケることはあった。
そういうハードに当たると、
「先にわかってりゃHELに任せるんだから申告しろよな、お前は企画厨か!」と
無駄な半ギレを起こす。
76 :
75 :2005/07/24(日) 18:01:37 ID:407DTSXj
間違えた、エミュレートできるフリ、じゃなくて、処理できるフリ、ね。
>>76 普通にC++だと思われるが、
機械語のバイナリから元言語を正確に推測する手はない。
作者に問い合わせれ。
79 :
78 :2005/07/24(日) 20:32:04 ID:407DTSXj
インポートしているライブラリと、内蔵しているランタイムから十分推測可能だが。
81 :
78 :2005/07/24(日) 20:46:50 ID:407DTSXj
ああ、じゃあ推測してやってくれ。
82 :
77 :2005/07/24(日) 20:49:30 ID:GCEKMoIz
バイナリ中にランタイムの種類が書かれているからそれを確認。 dumpbin等のツールでインポートされているライブラリを確認。 以上。
>>75 Trio64で転送先カラーキーを使うと落ちたね。
さっきは
>>77 のサイトが見れたんだが、なぜだか繋がらなくなった。
>>83 仮にゲーム全体が独自のスクリプト言語で作成されていて、
実行バイナリが第三者の手によりVC等で製作されていた場合、
ゲームの開発言語とランタイムが食い違うこともあるのでは?
まぁまぁ、知ったかぶりしたかった夏厨なんだから そっとしといてあげようよ
>>85 > 機械語のバイナリから元言語を正確に推測する手はない。
これに対する答えなんだが、スクリプトだろうがなんだろうが、
バイナリそのものは対象のランタイムを持つ言語で作られたということになる。
その中でどんなスクリプトや独自のデータを持っていようが関係ない。
>>87 御託はもうわかったから実践してくれって。
どれだけ難しいか分かるからさ。
ちなみにライブラリは言語ではなく環境依存な。
> VC等で製作されていた場合、 > ゲームの開発言語とランタイムが食い違うこともあるのでは? 言ってること分かってるのか?VC++でコンパイルしたなら、VC++のランタイムが要るだろ。 独自スクリプトをコンパイル前にC++ソースに変換するのか、実行時にロードするのかは知らんが どっちにしてもVC++のランタイムは必要だ。
VC++は言語じゃないっすよ。 ありゃ統合開発環境で、言語はC++ね。 ま、議論はもういいでしょ。 あとはID:IxWQrXiHの推測待ちかな。 ・ どうしてその言語だと推測できたのか? ・ 本当にそれ以外の言語から生成された可能性は絶対にありえないか? この2点が出来れば、正確に推測できると認めますよ。
>>88 同じ環境でコンパイルしたらVisualCやBorlandC、gccで同じランタイムライブラリが使われるのか?
馬鹿にも程がある。
>>91 もうご立派な理屈はいいからさ。
早く解析してよ。
で、90に答えてよ。
元の質問者もそれを望んでいるさ。
御託じゃなく、結論を、ね。
> ちなみにライブラリは言語ではなく環境依存な。 嘘を指摘したら、ご託はいいからとか怒られてしまった。
開発環境に依存するという意味だが。 あー。 俺はくだらん形而上的な議論をあまりする気がないんだな。 出来るか、それ以外か。 それが全てじゃん。 違うかい? 出来るならやって見せてよ。
やり方は
>>83 で書いた通りだが、何故無視するんだろう?
>>95 いや、それ仕様書出されて「どうして作れないんだ」って言われるのと同じだからさ。
仕様書通りに早く仕上げてよ、ってこと。
やり方は書いてあるし、結論も出したが、何が不満なのかさっぱり分からない。
>>97 「やり方」は書いたが、「結論」は出していないと思うが。
それとも、「正確には推測できない」という私の答えに同意するのか?
だいたいね、いつでも計画や理屈通りにうまくいくわけではないってことくらい、
お前だって経験で分かってるでしょ?
できるというのなら、具体的にやってみせてよ。
実際にやってみればわかるよ。
「絶対に他の言語ではない」という証明自体が無理だから。
だから「正確には推測できない」が私の答え。
そして、その木で鼻をくくった対応が
何らかの理由で直接作者に問い合わせられない人に対する
もっとも適切な回答だとも思っている。
やれやれ、面倒な人だ。
なんか、お前呼ばわりされた。 それで対応に対する適切を語るのか。 結論もやり方も書いてあるのに相変わらず無視だし。
>結論もやり方も書いてあるのに相変わらず無視だし。 ああ、そりゃ見せ方が悪いんでしょ。 コミュニケーション能力が著しく欠如したダボによくありがちなミスだね。
無視とお前呼ばわりはコミュニケーションの基本なのか。 確かにミスしまくりだ。
つか、普通、自分が言ったものを言ってないといわれたら、 ポインタを示すか引用しないかね? もっとも、残念ながらこの状況下ではポインタを示そうにも ヌルポになるだけだが。 お前はお前と呼ばれえるのが気に食わないのかい? 実力に合わずプライドだけは一人前に高いのな。 まぁ、人格を認めてもらいたかったら名無しをやめな。 名無しである以上、俺とお前は同格だ。 敬語は要らんがこっちもタメで話させてもらうよ。
推奨NGID IxWQrXiH 407DTSXj
ID:407DTSXj ID:IxWQrXiH この二人は何がしたいんでつか
>>102 なんというかコミュニケーション能力について他人に説法するだけあって、
コミュニケーション能力の固まりのような人だ。
>>105 かなり指導したのだが、君は変わらんね。
残念。
うちにきたら、ゴミだ。
さっきは開けたから、身の危険を感じて潜伏してんじゃないのか?
>>107 うちにきたらゴミだって、
その「うち」にいる人も
>>107 が近くにいたら大変だよ。
すぐ熱くなる上に上にコミュニケーション能力が高すぎて。
自分でコミュニケーションがとれないのに他人には説法やら指導やら。
自分では気がついていないんだろうけど。
>>77 がさっぱり見れないね。
この板ってレス少ないけど、ROM人口って相当いるのかな?
まあ今は関係ないけど、ランタイム無しでも動くソフトは作れるって言うんですよ┐(´ー`)┌
私のために戦うのはやめて
まあ、全て俺の自演なんだが
>>112 そんなこと言ってると「ランタイム」って単語の定義でまた盛り上がるぞ
このスレ、ときたま炎上するのがおもしろい。ゲ製板一ゆかいなスレに認定します。
質問いいですか? ゲームのデータのファイルを読めないようにアーカイブ化して 配布しようと考えているんですが、 実行前にどこかユーザに読まれない場所に展開して、 それをメモリに読み込みたいと考えております。 WINDOWSにはこういう場合の作業フォルダみたいな場所ってあるのでしょうか? 何かありましたらよろしくお願いします。
120 :
117 :2005/07/25(月) 02:56:10 ID:jEFHvk9B
>>118 遅くにレス有難うございます。
しかしできればメモリを使いたくないといった状況です。
というのもアーカイブファイルを作ったのは単純にゲーム内のイベント絵の
ファイルとかをユーザに見られたくなかったからです。
なので、アーカイブファイル→普通のファイルに展開→メモリに読み込み
→直後に展開したファイルを消す という方法を試みたのですが、
ファイルを全部メモリに展開すると、メモリ使用量が凄くて・・・。
なので、メモリに置くべきものを場面ごとに管理したいと考えたのですが
アーカイブファイル展開→実行中はファイルを置く→そのファイルを使って
各画面ごとにメモリ管理 というのを考えたのですが
そうすると実行中にはユーザにファイルを読まれてしまいます。
隠しファイルにしても、隠しファイルを表示するで、読まれてしまいそうです。
ファイル作成の際に共有を無しにして、アプリケーション終了時に
ファイルを消す。という方法も試みたのですが、
アプリケーション実行中に電源を落とす。→終了処理できずに終了→再起動
で共有ロックも解除され、ファイルも残ってしまいます。
(何をそんなにムキになってるのかと思われるかもしれませんが・・・)
なので、メモリは使わずに、ファイルとしてデータを使用できて
なおかつ、ユーザにも読まれないようにする。というような方法が知りたかったのです。
引き続き何かありましたらぜひよろしくお願いします。
fopen()してもメモリには読み込まれないよ? ファイルポインタを操作して、データをメモリにロードするだけなんだけど…。
なぜ全部をメモリに展開しようとするのか。
123 :
117 :2005/07/25(月) 03:27:49 ID:jEFHvk9B
>>121 遅くにどうもです。
うお・・・? いや勉強不足ですみません。
何か閃くようなものを感じたのですが
読み込みとロードの違いがちょっとわからないです。
ファイルからの読んだ情報でテクスチャとかメッシュとかを作るんですが
ファイル一つごとにテクスチャやメッシュが一つずつだと、メモリの使用量が凄くて、
それで一つのテクスチャに各場面ごとに違う画像を貼るように管理したいのですが
張る画像データをどのように保持しようかと悩んでいるのです。
一度オープンすれば、ファイルの実体が無くても、ファイルポインタで内容を持ましたっけ?…
ちょっと確認してみます。
夜分遅くに有難うございました。
124 :
117 :2005/07/25(月) 03:31:16 ID:jEFHvk9B
>>122 ちょっと方法が見つからないです。スミマセン
>>117 なんか昔の俺みたいのキタ。
tmpfile()で解決しない?
126 :
117 :2005/07/25(月) 04:11:56 ID:jEFHvk9B
>>125 一時ファイル・・・なんとなく行けそうな感じが!
ちょっと調べてみます。
夜分遅く有難うございました。
>>117 問題が2つあるようなので分けて考えたほうが良いのでは?
>メモリに置くべきものを場面ごとに管理したいと考えたのですが
同じテクスチャを参照しているオブジェクトが複数ある場合、効率よくメモリを使うのは結構大変です。
良くある手法としては、参照カウンタを持つテクスチャ集中管理クラスを作るというのがあります。
テクスチャを必要とするクラスは、ファイル名などを識別子として管理クラスに渡し、テクスチャの実態を受け取ります。
必要が無くなったらその旨を識別子とともに管理クラスに通知します。
テクスチャ管理クラスは、ファイル名などの識別子を受け取り、
・まだ読み込まれていなければメモリにテクスチャを読み込み、参照カウンタを1とします。
・既に読み込まれていれば参照カウンタを+1します。
必要がなくなった旨を受け取ったら、
・参照カウンタを-1します。
・参照カウンタが0になったらテクスチャに使用しているメモリを開放します。
メッシュデータに関しても、オブジェクトの数によっては同じような仕組みが必要でしょう。
使用中のデータだけがメモリ上に存在するように心がけなければなりません。
もう一つの問題、 >ファイルを全部メモリに展開すると、メモリ使用量が凄くて・・・。 これは理解できませんでした。アーカイブ全部を一時フォルダに解凍するにしても、 結局使用するテクスチャとメッシュはメモリ上に置くしかないわけで、 それなら使用中のデータだけをメモリに展開すれば何ら変わりないように思えます。 テクスチャ読み込み関数がファイルにしか対応していないのなら別ですけど。 ちなみに一時フォルダに解凍するなら、GetTempPathで取得したディレクトリに サブフォルダを作り、そこへ解凍するという手法があります。一般ユーザに閲覧される 可能性を下げるという面では効果的です(自動削除機能はありません)。 しかし、このフォルダは他のアプリケーションとの命名重複避けるための厳密なチェックが 要求されるので注意してください。 長文失礼しました。
そういや、ゲーム起動時に全データを読み込んでるゲームって、 たま〜に見かけるな。あれって、ウザいとか思わないのかな? とか思ってたんだが、単にそれ以外の方法を知らなかっただけ の話なんだな・・・
起動時に全データ読み込むのは良くなかったのかorz 途中で作成開放するとその度一瞬止まるしあんまり大きいゲームじゃないから起動時に時間かければいいかと思った。 読みこみで止まるのはDirectX使ってないせいなんですがねorz
一番良いのはウェイト無し。ただし作るのは大変だ。
メモ帳じゃないんだから、起動に少し時間かかったって許してくださいよ。 ゲーム起動するってことはアンタ暇なんでしょ? とか言ったら怒られるかしら
読み込み中にゲージでも表示しておけば許してもらえるでしょう。 そういえばその昔、データの読み込み中にミニゲームで遊べるソフトがあったような。
>>129 単純にそれだけじゃないだろう。
一般的に、ファイルアクセスは負荷が大きい。
>>117 一時ファイルなんてアホなことしないで、必要な部分だけ
必要なときにメモリに読み込むようにしる。
ひょっとして、fseekを知らない?
136 :
125 :2005/07/25(月) 14:06:26 ID:eavx+txE
ていうか、
>>117 がテクスチャやメッシュはファイルからしか読めないと
勘違いしてそうな所が問題な希ガス。
D3DXCreateTextureFromFileInMemoryExとかあるよ?
137 :
117 :2005/07/25(月) 16:23:31 ID:jEFHvk9B
>>127-128 管理クラスの構築方法についてとても参考になりました。
ファイルの解凍云々はちょっとこちらの勉強不足で勘違いで話してる部分も
あるかもしれないので、ちょっと理解しにくかったのかもしれません。
>>135 単純にファイル内容が連なってるアーカイブファイルであれば、
その中から必要な情報だけをseek してバッファに取り込んで
そのバッファを
>>136 さんも言ってるメモリ読み込みで、
読んでからバッファの解放。とできれば良いのですが
そもそもユーザに見られないようにというのを大前提で作った形式の
アーカイブファイルであるため、ファイルの情報を読むには
「アーカイブファイル全体」で、復号しないと読めないという形になっているのです。
これには4,5秒かかるので、seek直前に毎回この作業を行うのは現実的ではありません。
そして復号してファイル内容を読めるものを、ディスク上に存在させると、
ユーザに解読される可能性(爆 がありますので。
解凍して読み込んだ直後のファイルを全部一気に読んで、
ただちに全部消すという処理をしていたのはそれが原因です。
そういう背景もあって、ユーザが絶対に読めず、プロセス完了とともに
消滅するファイルを作れば解決できると思い立ったのであります。
でも別にユーザに読まれても良いのかも…
長文失礼しました。
皆さんとやりとりしているうちにだんだん、
現状の問題点を再確認できたような気がします。有難うございます。
新たに得た知識も元にして頑張ってみたいと思います。
> アーカイブファイルであるため、ファイルの情報を読むには > 「アーカイブファイル全体」で、復号しないと読めないという形になっているのです。 これ書かないと話が始まらないwwww
いやスマン、最初は「ユーザが絶対に読めず、プロセス完了とともに 消滅するファイルを作る方法」を知りたかっただけだったので 余計なこと言うと混乱すると思いました。 あまりにも親切な人が多すぎたのでついつい長くなってしまいました。
アーカイブファイルをメモリ内で展開できる程度のサイズに分ければ良いんじゃない。
141 :
128 :2005/07/25(月) 20:48:04 ID:nYH/Fcgd
>>137 ありがとう、理解できました。
実は私が作成中のミニゲームもアーカイブ全体を一気に複合しないと読み込めません。
複合時で1MByte以内に収め、さらに必要なファイルだけ解凍するようになっているので
問題ないですが、やはり1リソース単位で複合できたほうがスマートですよね…
ゲームを作りたいんだが。 プログラミングなどの知識は無知で何から手をつけていいかわかりません。 まず最初に何を始めたらいいんでしょうか?
>>142 まずはどの言語でゲームを作るかを考えないと
Flash(ActionScript)かHSP辺りを検討してみるのがいいんじゃない
>>143 なるほどっても言語自体もあんまし把握してなかったりします。
ゲム作成初心者に優しいっていうか作りやすい言語って何ですか?
とりあえずそれ教えてもらったら出来る限り自分で調べてみます
>>145 FLASHかHSPと書いてくれてるじゃないか。
あとはツクールとか
おれもFLASHはお勧め。
ただし値段が高いのが難点
なんかこの手の質問多いな。少し前のログも読めないのか。 最近の初心者は甘え癖が付いてるっぽいしな。
>>146 スマソなにか勘違いしてた。
んで二つ調べてみた
FLASH有料でHSPはフリーなんですね
とりあえずフリーのHSPを調べてみます
それでダメだったらFLASHで
>>137 ファイル単位で抜き出せるように、暗号化の仕方を変えりゃいいじゃん。
全体を一気に復号しないと読めないファイルが、強力な暗号化だと
思ってるなら勘違いもいいとこだ。
そもそも、普通のBMPからヘッダを1バイト書き換えるだけで、普通の
ユーザは中身なんて見ないよ。
昔はそうだったけどね。 最近はリテラシが高くなっているので クラッカー気取りの厨がいろいろ見ようとする。 ヘッダを1byte変えれば見られなくなるズブのシロウトなんて、 もはや神話の中の存在と割り切ったほうがいい。 いや、いるけどさ。 そういうのはシーラカンスと思ってもらって。
>117はシーザー暗号か単一換字式暗号使ってる方がまだマシなんじゃないかなあ
シミュレーションRPGツクール みたいなソフトの、無料バージョンは なにかないですか
シミュレーションRPGツクール そのものに、体験版があれば 問題はすぐに解決するのですが、 なぜかシミュレーションRPGツクールには 体験版がないのです (RPGツクールの体験版はありますが) ようは、将棋やチェスみたいなソフトを作りたいです
>>153 シミュレーションRPGツクール95 VALUE!の製品紹介を見てみたが、
将棋やチェスが再現できるとは思えんぞ。
それと、独自のルールとコンピュータの思考ルーチンを実装しようと思ったら
コーディングは避けて通れないと思われ。
155 :
切実 :2005/07/27(水) 09:11:09 ID:OCU552Xe
こんにちは、進級製作で横スクロールのゲームを作る事になりまして、そのためにいろいろと資料を集めている者です。 言語はCを使ってヘッダーはWindowsヘッダーを使う事になりました。 ゲームを作るといってもサウンドビジュアルノベルしか作れないので、当たり判定やその他基本的に必要なものなどのプログラムがほとんどわかっていません。。。 何か参考になる本やHPなどがあったら教えてください。
Vectorあたりでダウンロード数の少ないゲーム落として 自分が作りましたって提出すればいいんじゃないかな。 readmeの作者の名前を自分の名前に替えてさ。あは
Vector のダウンロード数って作者以外にわかるっけ?
そら 人気順 でソートして
>>155 専門?そういうときこそ講師の人に質問するんだよ。
どれくらいのものを作れば進級製作できるのか漏れらにはわからんし。
161 :
155 :2005/07/27(水) 11:46:24 ID:pyJfj+wk
>>159 さん参考にさせていただきます。
マリオみたいなものも考えてまして、そういったものはあるのでしょうか?
すみません。何かほしがってばかりで…(´・ω・`)
162 :
155 :2005/07/27(水) 11:50:12 ID:pyJfj+wk
>>160 さん。
専門学校です。
どれくらいかといいますと、売れる物となってますね・・・
ちょっとした同人ゲームくらいの作品が要求されてます。。
自分の希望でしたら、とりあえず遊べるものをと考えてます。
2Dのアクションゲームを作っているのですが、 ゲームに「視界」の要素を持たせたいんです。 一点から回りに向かって障害物までのみを 表示させるにはどうすればいいんですか? ム板からマルチです。 よろしくおねがいします。
>>164 見えない弾を周囲に飛ばして、Hitした床は表示して弾を通過させ、壁だったら表示し
て弾を消す…というのが基本かな。光が届く範囲が狭ければ12方向程度でカバーでき
るけど。
マップが矩形かつ均等に配置しているタイプなら、チェック座標を予めテーブル化
しておけば無駄は減りますが、マップの仕様がわからないので、とりあえずレイトレース
法で。
bmpを読み込んでドット単位で当たり判定を取ってます。 これだと単純な線だと空白ができるのでどうしようかと・・・
>>166 禁断のピクセル単位か…orz。ってことは壁は斜めや不定形もありうる?
bmpの他に壁(一辺)を記したデータテーブルを作って、自キャラとその壁の両端の延
長側を影として塗りつぶしていくしか。
/a' c
/
/
/*a------*
/ |
/ |
@__ |b
-*-___----*
--___
b'
a'、b'、cは画面端。a-b-b'-c-a'を囲んで塗りつぶし。ズレたかな。
断 念 し ま す わざわざありがとうございました。 視界システムはまたの機会にやりやすいマップで搭載することにします・・
169 :
名前は開発中のものです。 :2005/07/27(水) 16:57:59 ID:zXztEuOA
自機からレイを撃つんじゃなくて判定したいドットからレイを撃つんだ
判定したいドットがどれかを計算する方が面倒だと思われ。
171 :
名前は開発中のものです。 :2005/07/27(水) 17:51:00 ID:0k5RMKCy
何も遮蔽物がない状態の視界をまず用意しておいて、 その視界の中に存在する遮蔽物の最小要素(壁ピクセル?) を主体にしてそれぞれ観察者からの距離角度に対応して影をぬっていくってのはどう? もしも壁ピクセルが多すぎて重いってことなら解像度を下げたデータを 別に用意して そっちでやったっていいし、検出する方向&距離の解像度を下げて、落とす影ビットマップを あらかじめ用意しといてもいいかもしれない。とにかく影は隣のピクセルと同じ所を何度重ね塗りしたって かまわないわけで。というか今気づいたんで俺はこれでいくことにする。
それで作ったゲームうp希望
173 :
名前は開発中のものです。 :2005/07/27(水) 18:03:29 ID:0k5RMKCy
>>172 あとでね
壁ピクセルの評価順も、観察者を中心にだんだんと半径を広げていくようにやっていけば
観察者に近いピクセルが相当量の後ろの壁ピクセルをあらかじめ影と判断するだろう
そうしたらその影の中に入っている壁ピクセルは評価しなくていいわけで
かなりの処理が端折れるんじゃなかろうか
C言語でゲームを作り始めようと(インベーダー)思います。 今まで、高速化やメモリの管理などまったく考えてなかったのですが 最初はこれでもいいんですか?
問題なし、出来てから考えよう。
176 :
名前は開発中のものです。 :2005/07/27(水) 21:13:21 ID:LWHbWr3j
VC買おうと思うんですがいくらぐらいしますか?あと、WIN98なんですが古いバージョンのVCって電気やにおいてありますか?どんぐらい容量食うんだろ
3dsMAX や 六角大王 で作った3DCGを ゲームのグラフィックとして使うってことできますか? できるなら やり方を 教えてください・・・
ファイルの構造を解析すれば出来る。
179 :
うほ :2005/07/27(水) 23:16:10 ID:ER+CFmvU
↑マルチです 注意!
180 :
177 :2005/07/27(水) 23:26:24 ID:ZFFibNz6
>>178 もっと詳しく教えていただければ幸いです・・・
181 :
y :2005/07/27(水) 23:38:23 ID:ER+CFmvU
>180 てめえが建てたスレの責任くらいもてや
>>181自分のスレが行方不明なんです・・。
>>174 ここ10年ぐらいのハードなら問題ない
>>176 ヨドバシやソフマップには売ってなかった
>>177 Discreet 3ds max 用 X ファイル エクスポータ
184 :
名前は開発中のものです。 :2005/07/27(水) 23:53:00 ID:ZFFibNz6
>>183 ありがとうございましたぁぁぁ!!
185 :
155 :2005/07/28(木) 00:41:33 ID:y6IGWvce
>>163 さん本当にありがとうございます。
参考にさせていただきます。
教えていただいたHPを見てゲームを作っていきたいと思います。
要求だけしていた私ですが教えていただいたからにはしっかりゲームを作っていきたいと思います。(´・ω・`)
186 :
名前は開発中のものです。 :2005/07/28(木) 02:48:46 ID:7lkIavqJ
俺ゲーって何?
俺ゲーと聞くと俺の〜シリーズを思い出すな 関係ないけどな
189 :
名前は開発中のものです。 :2005/07/28(木) 22:59:21 ID:oUGUrJPt
>>188 ありがとうございました~
190 :
名前は開発中のものです。 :2005/07/29(金) 08:05:53 ID:LS+TisFZ
THE宇宙戦争って言うゲームがありますが,こういうゲームのMAPってどういう 方法で作っているんでしょうか?半球ライティングを使っても戦闘機の高度を 上げすぎたらいつかそのオブジェクトを超えてしまうでしょうし. どなたか方法ご存知の方いらっしゃいましたらアドバイスよろしくお願いいたします。
win32apiってビットマップ形式の画像しか扱えませんか?
いいえ。
>>192 JPGファイルを表示しているつもりでも、見ているのはBMP。
Windows でBMPじゃない形式のものは、まずBMPに直さないといけない。
ファイルデータをBMP形式のデータにさえ変換できれば
後はBMPと同じやり方で表示できる。
っていう考え方をもつとわかりやすいかも。
DIBとBMPを混同するな。
>>191 名前的にSimple2000だろう。
ってことでぐぐってみたが、THE宇宙大戦争じゃねぇか。
名前は正確に。
>>190 そのゲームのことよく知らねーけど
静止画とムービー見る限りではごく普通の(or典型的な)3Dアクションものだろう。
それとも、他の似たような3Dアクションものとは根本的に違う何かがあるのか?
> 半球ライティングを使っても戦闘機の高度を
> 上げすぎたらいつかそのオブジェクトを超えてしまうでしょうし
悪いが全く意味不明だ。
「高度を上げすぎたら」何か問題があるというのか。
環境光は高度に応じて当然変化していくわけだが
半球ライティングではそれが表現できないと言うのか。
「いつかそのオブジェクトを超えてしまう」の
「そのオブジェクト」が何を指すのかも分からない。
そもそもこれはマップの質問なのか。
それとも半球ライティングの質問なのか。
マップの作り方(作業工程)が全く想像できないというなら 洋ゲー(主にFPS用)のレベルエディタを触ってみればいい。 QuakeとかHalfLife買えば付属している。
×Quake ○Doom3
200 :
名前は開発中のものです。 :2005/07/29(金) 21:22:35 ID:X+eZSDWM
アイテムを収集することが目的のゲームを作るとして、 アイテムに価値を持たせるにはみなさんならどうしますか?
すみません意味不明な質問でした もっと練ろう…
リアルマネーに換金できる。
装備するとキャラの上に装備品を表示させる
その価値あるアイテムがないと、もっと価値のあるアイテムが手に入らない。 以後無限ループ。
ドラゴンボール理論ですね。
>>192 OleLoadPictureを使えばjpegファイルを読み込めるよ(windows98以降)。
ただこれを使ってHBITMAPを返す関数は100行くらいになるので、
どこぞのサンプルコードを自分用に変更するといいよ。
207 :
200 :2005/07/30(土) 08:28:36 ID:y56fksIg
>>202-204 レスありがとうございます。
>>203 いいアイデアですね。
どうぶつの森というゲームはご存知だと思いますが、
あのゲームではアイテムは一部を除いてただの飾り
なんですよ。グラフィックに価値があるんです。
参考になりました。
petzoldのプログラミングwindows第5版(上)を読んだので そろそろ次のステップへ入りたいと思います。 次はどんな勉強をしたらいいと思いますか? 1.プログラミングwindows第5版(下)を読む 2.directXの本を読む 3.C言語からC++言語へ乗り換える
4.読むだけでなくコーディングをする
>>208 読んでるうちは絶対に次のステップに進まない
書け
>>208 あなたが必要だと思う物を読めば良いと思う。
何が必要なのか、何が自分に足りないのか分からないのなら、
>>209-210 の言う通り、一度自分が作りたい物を作ってみてはどうでしょうか。
あなたの目的が作ることではなく、勉強にあるなら
一番興味のあるものから読み進めれば良いと思う。
>>208 よく組まずにただ読むなんてできるねー。凄いよ。
楽しかった?
>>200 アイテムを収集するってのは、基本的にちっとも面白くないので
それを主目的にしたゲームはただのクソゲーだよ。
集め終わったときの達成感はあるが、それは決して「おもしれー!」
というものではない。
どっちかっていうと、集めるのが面白いんじゃなくて、集まってない
状態が気持ち悪いだけだな。
>>200 手に入れたアイテムによってできること、
選択肢が増えることがあれば少し集める気になる
あとは組み合わせで効果を期待できたりとか。
武器も防具もアクセサリーも劣化消耗にする。
>>200 ・アイテムに合わせたイベントを発生させる。
・アイテムを装備等する事で、PCのパラメータが変動する。
・特定のアイテムを所有した場合には、出来なかった事を出来るようにする。
ゲトしたアイテムに応じたエロ画像を表示する
↑エロゲは標準装備であり、どれをやるとエロゲ認定されて他の欲求が高くなる。
すみません。質問ですが、 RPGなどの広いマップの作り方が分かりません。 二次元配列とXY座標を照らし合わせて 例えば移動可能かどうか数値で決めたりする方法がいいのでしょうか?
220 :
名前は開発中のものです。 :2005/07/31(日) 10:35:57 ID:Jq5OAF8+
キー入力で GDIで描画した円を動かすことに成功しました!! のですが・・・・ 今度は敵を描画し、動かそうとおもったのですけど・・ イベントをプローシージャにおくれないので 描画することはできても動かすことはできません 僕の頭の限界でございます。 参考さいとだけでもいいので教えてもらえたらとてもうれしいです^^
進行用のスレッドを一つ発生させて、ウエイトをとりつつ定期的にデータを書き換え描画。
>>220 タイマー割り込み定義して、イベントをプロシージャーに送る。
…アクションゲームじゃないのならな。
224 :
名前は開発中のものです。 :2005/07/31(日) 15:40:37 ID:Jq5OAF8+
ありがとうございます!!!!!!
>>221 さん
>>222 さん
>>223 さん
>>223 さん
安心してください!アクションゲームではないです!!
スライムの休日を作っています。
しかし、もしアクションゲームを作るとなると
タイマーじゃ無理ですよね?!!!
と、いうことはどうすればいいんでしょうか
>>221 さんの方法ですか?
225 :
名前は開発中のものです。 :2005/07/31(日) 16:20:06 ID:xLTaVVIa
よく分からないが、当たり判定はX軸だけで式が4つ必要だと思う。 これだと半分しか当たり判定してないんじゃないかな? と、初心者が適当なことをぶっこいてみる。 DXライブラリ置き場のゲームプログラム講座の 当たり判定のところを見ながら直してみたらいかがか?
>>225 ソースは見てないが、移動する2つの物体間で
フレーム前と後の座標がすれ違う事は良くあるが、それは考えてる?
>>226 当たるときはどこに撃っても当たるし、当たらないときはどこに撃っても当たらないから多分違うと思います。
>>227 すいません、考えてません、というか解りません。orz
if( ( jiki.shot[j].GetPosX() + 3 > // 自弾左? teki[i].GetPosX() + 13 && // 敵左? jiki.shot[j].GetPosX() + 3 < // 自弾左? teki[i].GetPosX() + 108 ) && // 敵右? ( jiki.shot[j].GetPosY() < // 自弾上? teki[i].GetPosY() + 75 ) && // 敵下? jiki.shot[i].GetPosY() > // 自弾上? teki[i].GetPosY() ) // 敵上? { } 私も初心者です。X軸は二つでいいと思うのですが、 この判定法に問題があるとすれば、 自弾の右と自弾の下を考慮してないためでは? フラグの上げ下げはよくわかりませんが・・ あー、でももしかして (jiki.shot[j].GetPosX() + 3)ってのは自弾の中央かな? それだとけっこう、当たって見えるような気もするなあ。
>>225 teki[i].hpが初期化されていないから、とんでもなく大きい値が入っていて、なかなか死なないだけじゃないのか?
プレステの画像フォーマットTIM2についての仕様を詳しくしくしりたいのですが、 いい解説サイトありませんか? SCE-NETから仕様書が落とせるらしんですが、開発者関係でないと無理らしいので。
232 :
225 :2005/07/31(日) 17:05:37 ID:xLTaVVIa
>>229 はい、それで合ってます、解りにくくてすみません。
フラグはあってもなくてもいいみたいです。
>>230 当たらないときは弾が消えずに貫通するから違うと思います。
弾とかのオブジェクトを消すタイミングには注意してる? オブジェクトを消した瞬間に、どっかの処理がとばされて無い? 弾の処理で、0123の順番で処理をしていて、3の処理で3の弾を 消したら、4番目の弾が3番目に来るけれども、それでも次の処理 では4番目の弾の処理を行って無い?
そうだな、 ここが ( jiki.shot[j].GetPosY() < teki[i].GetPosY() + 75 ) && jiki.shot[i].GetPosY() > teki[i].GetPosY() ) こうだな ( jiki.shot[j].GetPosY() < teki[i].GetPosY() + 75 && jiki.shot[i].GetPosY() > teki[i].GetPosY() ))
235 :
225 :2005/07/31(日) 17:17:37 ID:xLTaVVIa
>>233 オブジェクトを消したり作ったりしてるわけじゃなく、オブジェクトの数は10個で固定でフラグであるかないかしてるんですが。
これでもなんか注意することってありますでしょうか?
>>234 症状は変わりませんでした。
>>235 自機ショットフラグ上げるとこが無いけど、それはだいじょぶなん?
あと初期化も。
貫通するってことは、フラグが入ってないと思うんだけど。
237 :
225 :2005/07/31(日) 17:29:20 ID:xLTaVVIa
ええい、ならばこうだ。 ( jiki.shot[j].GetPosY() < teki[i].GetPosY() + 75 ) && jiki.shot[i].GetPosY() > teki[i].GetPosY() ) を ( jiki.shot[j].GetPosY() < teki[i].GetPosY() + 75 ) && jiki.shot[j].GetPosY() > teki[i].GetPosY() )
239 :
225 :2005/07/31(日) 18:03:02 ID:xLTaVVIa
>>238 あ、直った、ケアレスミスだった。お騒がせしてすみませんでしたーm( __ __ )m
答えてくれた人ありがとうございました。
こう書く方がすっきりしてて好き。 int shotX = jiki.shot[ j ].GetPosX() + 3; int shotY = jiki.shot[ j ].GetPosY() + 3; int tekiLeft = teki[ i ].GetPosX() + 13; int tekiRight = teki[ i ].GetPosX() + 108; int tekiTop = teki[ i ].GetPosY(); int tekiBottom = teki[ i ].GetPosY() + 75; if( tekiLeft < shotX && shotX < tekiRight && tekiTop < shotY && shotY < tekiBottom ){ }
スイマセン、シュミレーションRPGツクール95の話題は何処でしたらよいのでしょう?
>>238 は、デバッガ使ってるか?
簡単なケアレスミスならデバッガですぐに見つかるよ。
いや、238は関係無いし。 そもそも、変数名がアルファベット1文字と言うのが根本的な原因だろ。 ハンガリアン記法でも採用したほうがいいぞ。
アンカーミスだ。 orz
いや根本的な問題は設計だろ。 コード中に 3 とか 108 とか埋め込むのは天才ハッカーのやること。 if(shot[i].collide(teki[j])) { process.... } ↑くらいには書けないと将来的にはバグの嵐になる。
246 :
名前は開発中のものです。 :2005/07/31(日) 22:57:04 ID:eiDOEbEQ
ごめんなさい、スレ違い覚悟の上でお願い事があります。
ゲームをほとんどやらない30代後半以上の方、またはゲームをよくする30代後半以上の方へアンケートをお願いしています。
もし可能でしたら以下のサイトから記入して頂けませんでしょうか、協力お願いします。
http://nerovia.podzone.net
マルチポストウザス
便乗させていただきます。 アリスソフトのsystem3.x、4に関する話題は 何処で行えば宜しいでしょうか?
251 :
名前は開発中のものです。 :2005/08/01(月) 22:21:01 ID:1O1eFEhM
windowsAPIのPieで円を描画して それを ゲームループの中で Y座標の値を上げて 円を動かしていました・・・・・しかしなぜか画面中央部に差し掛かったところで とまってしまいました・・・・ FPSを一定にしてないから処理落ちしてしまったのでしょうか?
毎回y++やってれば普通に下に行くかと。 中央までいけるのなら、下まで行けないわけがないし。 下から上はどうなん? 左右とかもためしてみた?
253 :
名前は開発中のものです。 :2005/08/01(月) 22:44:59 ID:1O1eFEhM
>>252 X座標は大丈夫でした
Y座標は上でも下でもだめでした・・・
Y座標の変化を画面に出力してみたら。
>>253 たまにそんなこともあるよね。
Yに足すべきところを、Xに足したりして。
イージーミスだと思うから、もう一回プログラムを見直してみ〜。
ループうんぬんの問題ではないかと。
もうちょっと色々試行してみて絞り込むしかないな 全然関係ないとこがy座標の内容書き換えてるとか有り得るし まずは値を確認する事だな
257 :
名前は開発中のものです。 :2005/08/02(火) 04:14:36 ID:laN3IkcQ
板違い覚悟、 エミュレーターやROMの質問ってのはどこですればいいんですか?
259 :
251 :2005/08/02(火) 14:16:40 ID:QdkgLI7W
>>254 出力してみたんですけど
Y座標の値はちゃんと減っていっていました。
しかしPieで描画した円は300あたりで動きが止まってしまいます・・・
260 :
251 :2005/08/02(火) 14:24:47 ID:QdkgLI7W
っああああtっと!!11 でけいttったー!!!ありがとうございあmした!!!! ありがとうございました!!原因は裏画面の呼び出しが変なところにありますた!!!
>>250 どもですー。謝謝々々。
早速行ってみます。
ゲームスクリプトってどんな感じにプログラムを組めばいいですか? 因みにC/C++です。アルゴリズムでもいいのでお願いします。
文字列の探索を主に使うんじゃないかな。 スクリプトが書かれたファイルが script.txt で区切り文字を ; だとすると ; まで、文字列をバッファに確保 バッファの内容を見て、例えば Draw だったら プログラムでDraw Text ああああ だったら、プログラムでTextOut(ああああ) とか。 PlaySount,1 だったら、プログラムでPlaySount(1) とか。 そんな感じのエンジン組んで、実行時には、指定フォルダに スクリプトファイルを置くようにするとか。
>>263 どうもありがとう。
それで、一回組んでみます。
265 :
名前は開発中のものです。 :2005/08/03(水) 19:16:13 ID:DYtQyt67
すみません、金銭に関する質問はタブーでしょうか? 一般的に同人関係で絵師に依頼する場合原画や彩色の単価はお幾らくらいなのでしょう? 人によってピンキリだとは思いますがおおよその相場が知りたいです。宜しくお願いします。
266 :
名前は開発中のものです。 :2005/08/03(水) 21:52:17 ID:tgazOwic
2Dのアニメーションを定義したファイルを作ろうと思うのですが PSフォーマットのANMとTSQじゃデータが多いような気がして ならないんですがPCゲーム用の定義としてどういったことに気をつけて 作ればいいですか?又は必要なデータを教えてください。
>>266 使いやすさを心がけること
何が必要か自分で決めれないならプログラム組むのはやめとけ
268 :
名前は開発中のものです。 :2005/08/03(水) 22:19:05 ID:tgazOwic
いやある程度は自分で考えてるんだけどVRAM上のX座標とかって必要なの かなとか思っててまぁ他にいくつかの要素で悩んでるんだけどできる限り 多くの人に使われるものを作りたかったので聞きました。 PCのゲームで使われている形式とかPS2のフォーマットとかわかる方 いらっしゃいましたら教えていただけますか?
>>268 今時「VRAM上のX座標」って、あなたお年より?
>多くの人に使われるものを作りたかったので・・・ >PS2のフォーマットとかわかる方 PS2って、極々一部ですよ。 >PCのゲームで使われている形式 普通のBMPやjpg、png等の一般の形式を、圧縮して使っているだけだから。 元は一般のBMPや、pg、png等のフォーマット。公開するなら一般の形式で。
271 :
270 :2005/08/03(水) 22:27:50 ID:M1dqvPZB
2Dしか見ていなかったが、3Dでも同じように一般に広く広まっている形式な。
FPSを表示したり FPSを安定させたりする やり方について書いてあるホームページしりませんか? できればC言語がいいです。
273 :
名前は開発中のものです。 :2005/08/03(水) 22:36:08 ID:tgazOwic
>270 PCのゲームで使われている形式っていうのはPSにおけるANM/TSQであって 画像形式の話じゃないですよ。PCゲームでJPGとかの画像形式を使っての アニメーションを定義している形式が何かありませんかということです。 質問の仕方が悪くてすいませんでした
>>273 それぞれの会社独自の形式があったり。ライブラリーとして公開している形式も
幾つかあるが、そのライブラリーに依存するので、一般の画像形式が一番だな。
3Dなら動画含めてのフォーマットもある。どれがいいとは一概に・・・・・
結局使う形式に変換するし。
>>272 1秒間に60回フレームを表示する、ただそれだけだ
C言語じゃちょっと難しいな、WinAPI使えば簡単だが
277 :
名前は開発中のものです。 :2005/08/03(水) 23:44:01 ID:uiYam5We
VC++でゲーム作ろうと思ってるのですがMFCとAPIの違いがよく分かりません。 ゲーム作るならAPIの方がいいって情報をよく見るのですが、実際どうなんでしょうか? MFCから勉強しようかなぁと思ってるのですが、APIから入った方がいいんでしょうか?
描画オブジェクトクラスA、当たり判定オブジェクトクラスBがある。 A,Bはそれぞれ使用したり、多重継承で両方の特性を持ったクラスCを作って使ったりする。 上のよう形で設計したいのですがA,B,C全てで自分の位置を表す変数posを必要とします。 ここで、Cのposが2個あるといった状況にならないためにはどうしたらいいでしょうか??
>279 えー以上 アンカーを軽視するとえらい事になるという例でした
>>278 座標クラスをPとして、Pを継承したAとB.....という設計にする。
>>281 それって魔の菱形継承じゃないですかね?
この場合はいいのかな。ちょっと考えて見ます。
ヒント:仮想継承 class P; class A : public virtual P; class B : public virtual P; class C : public A, public B; ちなみに、言語は C++?
しまった、仮想継承は public virtual X だった orz
>>283 !! 仮想継承なんて知りませんでした。。
ありがとうございます。これでいけそうです。
#C++です。というかC++以外に多重継承させてくれる言語シリマセン。。
#実装の継承も出来ると便利だと思うのですが、時流ではないのかしら。
>>277 API(Win32 API)は Windows に対する命令のセット。
ウィンドウ操作や描画、入力検知、ファイル操作とか OS に対する命令は全てこれを使って行う。
MFC は Microsoft が用意したアプリケーション開発のためのクラス群で
API を使い易くまとめたもの。
型通りのアプリケーションを作るなら MFC が早いし、簡単だけど、
初心者がゲームのような MFC で想定されていないアプリケーションを作る時は、
MFC が理解の障害になると思う。
なぜなら、MFC を使うのにも基本的な API の知識は必要だし、
MFC は骨組み(フレームワーク)に自分のコードを追加する形で作っていくので、
MFC 独自のルールを知っておく必要がある。
にもかかわらず、普通のゲームは MFC の提供する機能のごく一部しか使わないことが多い。
そのため、自分で API を書いた方がさっさとゲーム作りに取りかかれる。
これらの理由でゲームを作る場合は API から始めるのが定番になってる。
ただ、将来ゲーム以外のアプリケーションを作る予定もあるなら
MFC のようなフレームワークを触っておくのも、悪くはないとは思う
(ただ、教科書以外のことをやろうと思ったら結局 API を勉強することにはなります)。
287 :
名前は開発中のものです。 :2005/08/04(木) 10:19:39 ID:kfChrYpJ
>>286 分かりやすい説明、本当にありがとうございます。
ゲーム作るにはAPIの方がいいし、結局MFCもAPIの延長線上にあるって事ですね。
APIから初めて必要になったらMFCに入るのがベターってところでしょうか?
288 :
名前は開発中のものです。 :2005/08/04(木) 11:30:07 ID:5leUs97r
■■■■■■■■■■■■■■■■ ■ ■ 違う板にコピペすると、四角の枠の中に ■ ■ メッセージとURLが現れる不思議な絵。 ■ ■ ■ ■ (その仕組みがリンク先に書いてある) ■ ■ ■ ■ この原理を応用すると、まったく新しい ■ ■ コピペが作れる予感。 ■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■ ■ ■ ■ ■ ■ いまどき ■ ■ こんな罠 ■ ■ 引っかかる奴 ■ ■ いねーよ ■ ■ ■ ■■■■■■■■■■■■■■■■
しつもん RPGツクールみたいな、カンタンな インターフェースで、オンラインゲームを つくれるシステムってありますか?
■■■■■■■■■■■■■■■■ ■ ■ ■ ■ ■ ■ ■ natudana. ■ ■ ■ ■ ■ ■ ■ ■■■■■■■■■■■■■■■■
294 :
名前は開発中のものです。 :2005/08/05(金) 09:01:53 ID:GUDl73+A
お願い・・・(´・ω・`) 横スクロールのアクションゲームのステージを作るのにすごく困ってます。。。 何か良いHPや本ありましたら紹介してください。。。。
295 :
名前は開発中のものです。 :2005/08/05(金) 09:06:36 ID:zUZtGy3P
何に困っているのか詳しく書かないと・・
いくら頭が悪くて困っていても、 さすがに他人の脳を外科手術するわけにもいかないし。
>>294 ↓みたいなデータを作るような感じで行けば、いけそう?
・出現する敵とかアイテム
敵データ[最大敵種類]
L初期体力
L移動方法
L攻撃()
L移動()
画面に現在でている敵ナンバー[最大同時出現敵数]
L体力
L位置
Lナンバー(敵データと対応)
画面に登場する敵ナンバー[ステージ出現敵最大数]
Lいつ出現するか。(主人公位置、スクロール位置、開始からの秒数など)
Lどこに出現するか。(XY座標)
Lそのタイミングで出現する敵ナンバー
普通はマップとの当たり判定あたりで詰まるんだろうな。 そこまで行けない人にはアドバイスしようがないが。
299 :
294 :2005/08/05(金) 10:35:46 ID:GUDl73+A
文字足らずですみません。。 mapをcsvかtxtで作ってプログラムに反映(?)させる方法がわかりません。
それはもう単純にファイル入出力を勉強してくれとしか言いようがないな 言語書いてないから具体例書きようないけどちょっと勉強すればすぐできるんで
とりあえず、あらゆるデータを固定長にし、半分バイナリファイルみたいな扱いにすれば少しは楽なのでは? 例えば1行が128文字になるように気をつけて入力しておけば、下記のように記述できる。 int map[16][128]; for(y=0;y<16;y++){ for(x=0;x<128;x++){ map[y][x] = 一文字読み込み; } 改行文字スキップ; } 慣れてきたらもっと冗長性の高いデータ形式と読み込みロジックを作ればいい。 でも横スクロールのマップって当然横にながーいわけだから、メモ帳とかで編集するのってちょっと大変。
そういう時はマップエディタを作ればいい もしくは長いマップを細かく分割するロックマン方式
今月のCマガの特集がアクションゲームを作ろうという奴だったな。 ソースは誰でもダウンロードできるので、参考にしてみなさい。
304 :
294 :2005/08/05(金) 23:11:37 ID:GUDl73+A
ありがとうございます。 もっと勉強して頑張って行きます。。。
305 :
名前は開発中のものです。 :2005/08/05(金) 23:12:21 ID:B3Kp/aGH
FLOAT f=Vec3Length((VECTOR3*)pv);//正規化 if (f>0.0f) f=1.0f / f; pout->x=pv->x*f; pout->y=pv->y*f; pout->z=pv->z*f;
何この高速化
>>if (f>0.0f) これは解決になってないよ
308 :
名前は開発中のものです。 :2005/08/06(土) 16:01:08 ID:NxuwiOBd
ポトリスとか前ハンゲーにあったバトルガンナー?みたいなゲームを最終的に作りたいんですが、 どの言語を使えばいいと思いますか。 ネット対戦がしたいんですが、 いきなりでなく、言語が定まればコツコツ簡単なとこから練習するつもりですが。 そしてネットワークについて知識がない場合はIP/TCP?みたいなのを先勉強したほうがいいんですか。
309 :
308 :2005/08/06(土) 16:05:33 ID:NxuwiOBd
言い忘れました。 今までの経験は、HSPでマリオ風アクションを作った程度と、 と、JAVAでアプレットで線が引ける程度です。 昔Cは眺める程度見ましたが、ウィンドウ出すまでいきませんでした。 脳レベルとしては、今年大学入ったぐらいの年齢です
(ネットワークが扱える言語で)好きな言語を使えば良いと思うよ 先に勉強するか並行して勉強するかは自由
>>308 最終的にはC++で作るのがいいと思うよ。VB,Javaあたりでもできんことはない。
>簡単なとこから練習するつもり
良い心がけだと思う。それなら途中で言語を乗り換えることも視野に入れるといいかも。
HSPやJavaは取っ付きがいいと言われてる。
312 :
308 :2005/08/06(土) 16:13:20 ID:NxuwiOBd
>>308 ありがとうございます。
特に言語に縛らなくても作れるというわけですか。
Javaってネットワーク扱えましたよね確か。
ネットワークを重視してるんだったらJavaでいいんじゃない?よく知らんけど。 つか、HSPでもネットワークプログラミングできるんでしょ? TCP/IPを直接使うには、WinSockというライブラリを使う。 でもまあ、JavaなりHSPなりにもっと簡単なライブラリが用意されててると思う。
314 :
308 :2005/08/06(土) 16:14:33 ID:NxuwiOBd
>>311 なるほど。C++ですか。
C++ってCをやらなくてもとりあえずは理解できるものですか??
315 :
308 :2005/08/06(土) 16:16:53 ID:NxuwiOBd
なるほど。 やっぱりある程度はやってたHSP/Javaあたりでやるほうが いいのかもしれませんね。
316 :
名前は開発中のものです。 :2005/08/06(土) 16:26:46 ID:Zvls/qoj
質問です 2chのスレのスクリーンショットやモナーなどをゲームに使いたいのだが 使っていいのでしょうか? 板違いだったらすみません:
>>308 C++を理解するにはCを理解していないと辛い
Javaを理解しているとC++も理解しやすい
>>316 フリーなら問題ないって議論が前にあったな
319 :
& ◆vPvzMVQJsM :2005/08/06(土) 16:45:31 ID:Zvls/qoj
フリーです。 ありがとうございます
320 :
名前は開発中のものです。 :2005/08/06(土) 19:06:44 ID:PBZJhQ4u
ちょっとだけ見たが。 初手角に置かれたら、対角線に置くを追加すればいいじゃないか? あと、余分なロジックが多すぎに感じる。もっと小さくなる。
追加 ×対角線に置く ○対角線の角に置く
もうちょい見たがソースの半分以下になるな・・・・ 縦横斜めの足し算する配列作ってぐるぐる回すだけで確認可能。 チラッとしか見てないけどな。多分いける。
>>324 すいませんがよくわかりません。
もう少し具体的に説明していただけると助かります。
元ぼ盤データが0無し1ありならな。(細かくは見てない
配列に
{{0,0}{0,1},{0,2}}, これで横の足し算配列0
{{1,0}{1,1},{1,2}}, これで横の足し算配列1
:
:
{ 斜めの配列 }これで斜め足し算配列1
この配列の足し算をぐるぐる回して、
int count[XX];
に入れる。
このテーブルに2があればリーチ
3があれば上がり。
2の場所のインデックスで前記のテーブル見れば攻め場所はすぐにわかる。
以上。
最初の1手は
>>322 をな。
漏れ、寝るので後は自分で考えてちょ。
>>327 まだ良く分かりませんが自分で考えてみます。
ありがとうございました。
誤解があるといけないので追加。 int count[XX]; のテーブルは3つ作るのがベストだろう。 相手,自分、両方の、ほかにもあるかも知れんが。 後は自分で考えてくれ、以上寝ます。
>>329 漏れも適当に考えただけなのであれだが、3つも作るのは無駄があるかと。
COMに-1を割り振れば、純粋に盤の値を足すだけで判別できる。
3or-3なら上がり。
2or-2ならリーチ。
構造体にして状態もたせるとか
gamdevのpukiwikiってこの板の管理なのか知らないけど この板でゲーム作り始めたんだけど勝手にページとか作っていいの?
よろし。
アクションスクリプトについてはフラッシュ板ですかね?
プログラムを組む時は数学を3Cまで、またはそれ以上を前もって学習した方が良いですか?
>>335 それは悩む順番を間違えている。
プログラムをしていて分からない数学が出てきたときに、学習するべきか否かを初めて考えればよい。
数学を理解するんじゃなくて プログラムの流れを理解できるようになるのが先だな
三角関数くらいは使いこなせた方がいい気がするが プログラムで出てきてから勉強する方がずっと身につく気もする
ドラゴン桜「数学、特に幾何学を理解するのは3Dゲームプログラミングが一番だ! そこで数学は清水先生にお願いします!」
>>339 ええええ??
素人にいきなり3D組ませるのかよwwww
あのマンガ評判いいから買おうとおもってたのに。
GTAのようなゲームを作りたいと思ってるのですが具体的に何からはじめたらよいのでしょうか? GTAの本スレでプログラム言語について聞いてみるとDirectXをマスターしたら良いとのことだったのですが DirectXについて調べてみるとDirectXだけ勉強したらゲームのプログラミングは出来るようにはならず、 そのほかにC言語やBASICについても勉強しなければならないとのことだったのですが。
そんなスレで聞いてくるなよ。ゲーマーが詳しいのはVGAくらいだ。 言語のことなんか知ってるわけないだろ。 かといってここで聞くのが正しいのかと聞かれてもそれは微妙だが。
>>341 GTAがどういうゲームか良く知らないけど、3Dゲームだったら3Dの知識がいる。
通信ゲームだったら通信の知識。WindowsのゲームだったらWindowsプログラムの知識。
アクションゲームならそれ用の知識。
・・・道は険しい。
初心者がいきなり3Dやらネットワークやら作れる訳が無い ジョギングしたことも無い人間が いきなりフルマラソンを完走して一位になろう と言っているようなものだぞ
語学だったら、一朝一夕で使いこなせるようにならないというのは分かるはずなのに、 言語だとそれが出来ると勘違いする。 馬鹿の脳味噌がどうなっているのか不思議の固まりなので、一度解剖して調べてみるべきだ。
>>341 1.プログラム言語を修得(C言語)
2.IDEを用いて、言語、コンパイル、リンク、についてを知り、
1.の知識とIDE を用いて、0の状態からexe を作る方法を修得する。
作るアプリは、1+1の結果を表示するだけでも構わない。
3.2の知識を用いて、Win32API を修得
4.3の知識を用いて、Win32API だけで2Dのゲームを作る
5.DirectX の基礎に書かれた参考書の、サンプルコードを研究し、
DirectX を用いた描画処理の方法を知る
6.5で得た知識で、4で作ったゲームの描画処理を DirectX を使って行うように改良する 7.DirectX の基礎に書かれた参考書の、サンプルコードを研究し、 DirectX を用いたBGM、効果音再生の方法を知る 8.7で得た知識で、4で作ったゲームのBGM、効果音を DirectX を使って鳴らすように改良する 9.5,6 で得た知識を用いて、3Dのものをなんでもいいから、画面に表示する アプリケーションを開発する。 10. 9 のアプリで表示した 3D の物体を自分の思うように動かせるように 数学を学ぶ。 11.10で、自分の出したい動きを全て表現できると、感じたら 全ての知識を使って、足りない部分を随時調べて補いながら、 GTAの開発を開始するがいい。 もし、今の君が本当に素人の人で、この工程を全部きっちりこなして GTAを完成させたとしたら、俺は多分泣く。
会社辞めて三年ぶっ続けやればできるかな……とも思うが、10が不可能だわさ。 ちなみに、ただのレースゲームなら普通にアクションの要領で作れると思うが。 とりあえずエクセルバイクみたいなゲームから作ってみて、マリオカートなどに 発展させていくのがいいんじゃないかな。 もし素人なら、Cや++をやる前にNScriptreや吉里吉里などで ある程度ゲーム作りに慣れれば後々楽になる……と思いました。(無料だしネ!)
JavaとかASができてもC言語は難しいんです<>
>>350 エキサイトバイク・・・?
>>351 CやJavaが出来ても、ASは難しいんです(><)
はぁ・・ほんとFLASHムズイ
>>346 2ちゃんだからか知れないが
簡単に他人を中傷出来る
その己の脳味噌も疑うべきじゃない?
おかしな病気にかかってるかもよ?
でも>346の言ってる事はかなり的を得ているわけですが #最後の一行がちょこっとジャマっけなのは同意 本の解説読んだだけで理解できたと勘違いしちゃって、結局挫折するなんてよくある話だね やっぱり一度自分で組んでみて色々と試してみないとダメだね
>>347 難易度が指数関数的に上昇していきますな。
1.Cだけ覚えても後々つらいのでC++も覚えてほしい。
2.コンパイル、リンクについて知りたいならIDEなんて使わずにmakefileを自分で書いたほうがいい。
3.4.純粋にゲームだけを作りたいのなら、win32APIは飛ばしても。
あと
>>341 の雰囲気を見るに、
1以前に計算機アーキテクチャについて流し読み程度で良いので学習した方がいいかと。
プログラム言語→DirectX、で違和感を感じないような状態ではどうしようも。。
Win32APIを不要だからと言って跳ばすより みっちりやった方が結果的にゲーム完成への 近道かも知れない罠
確かに、Win32API関連はプロシージャへのメッセージの種類と それぞれどのタイミングで送られるか程度だけでも把握してれば 後はヘルプを使いこなす能力だけでなんとかなるような気もする あと、2と1は逆にしたほうが良かったな・・・ 10から11への難易度の差は卒倒しそうだ。
>2と1は逆にしたほうが良かったな・・・ そうだね 言語の文法だけ詳しくても いいコードを書けるとは限らないからね 個人的に プログラミングの学習は実践が一番身に付くと思う 本やネット上の文書だけ読んでも、現実にコンパイル環境が 無いとちっとも頭に入らない俺orz
>>347-348 人大杉状態で書き込めませんでした。
ありがとうございます。道のりは遠そうだ・・・。
まてまて、みんなやってるハズなんだが 「良いソースコードをいっぱい読む」のが一番上達するぞ??
それは最低限読んで理解できるだけの能力が必要だな
>>360 自分なりのコードが書けるような状態だからこそ、
良いコードと自分の糞コードの違いが目立ち
目からうろこが落ちるんだと思う。
つーか他人のコードはクソコード
>>359 お客さんお客さん、良い「壷」あるけど買わない?
いまなら金壷もオプションでついてくるよ
367 :
名前は開発中のものです。 :2005/08/11(木) 19:35:54 ID:TvKt20T9
V=ベクトル、M=行列 式「V-V*M」を式「V*M'」に変形可能らしいんだけど M'をどう求めればいいんでしょうか?
「M'=単位行列-M」ですかね? ちょっと検算してみまつ・・
V-V*M = V*E-V*M = V*(E-M) ですな
372 :
名前は開発中のものです。 :2005/08/13(土) 11:03:31 ID:csDdbmEj
ゲーム中のFPSを指定した数字のFPSにしたいのですがどういったことを すればいいですか?
描画間隔を経過時間を調べて調整する。
>>372 「数」と「数字」は区別しろ。
1) 1フレーム分の処理
↓
2) 時間待ち
↓
3) 画面描画
↓
1) へ
例えば 60FPS なら 1/60秒 でこれが一回まわる。
1) にかかる時間が n なら
2) で 1/60秒 - n 待てばいい。
ぐ、なるほどそうやるのか if(last_time + (1000/60) <= GetTickCount()) { 1フレーム処理(); last_time = GetTickCount(); } これで行けてると思ってたんだがな……
376 :
374 :2005/08/13(土) 16:13:32 ID:aCOyLOJL
処理時間 n は 3) のぶんも含めといて。
>>375 それだと1フレーム16ms固定だから、62.5FPSになっちゃうのが悩ましいところなんだよな。
微妙に17msのフレームを混ぜているんだけど、そうするとコマンド入力なんかが微妙にずれてくるし。
>>375 それじゃ全然ダメだろう。
それだけで3つもダメなところがある。
一番駄目なところは、1フレーム処理()の前と後で時間を
取得していること。fpsを一定に保つという目的すら達成
できていない。1フレーム処理()とは別に16msのウェイトを
入れたのと等価な処理をしている。
二番目に駄目なところは、ifの条件が真になったときに
GetTickCountがlast_time + (1000/60)よりも大きかった
場合を考慮していない。(last_timeの更新部分)
三番目に駄目なのは、GetTickCountを使っているところ。
実際にはGetTickCountでもtimeGetTimeでも精度は変わらないが、
デフォで5〜20msの精度に設定されているから、こういう用途では
精度を1msに設定しないと駄目。
あと1番目と関係してくるが、ループ内では時間の取得を
複数回やるのはタブー。最初に1回だけ取得して変数に入れておき
ループ内ではそれを使うようにしないと駄目。
379 :
名前は開発中のものです。 :2005/08/13(土) 18:42:49 ID:+r/i+gJ2
64×48を10個と640×48を1個では 仮想デバイスに描写しておく時、同じ容量と見なされるんですか?
やれやれ
381 :
名前は開発中のものです。 :2005/08/13(土) 22:22:12 ID:LZPbIUHE
STGの画像素材のあるところ教えてくらはい
382 :
名前は開発中のものです。 :2005/08/13(土) 22:35:08 ID:csDdbmEj
テクスチャ管理クラスを作ろうとしていろいろなゲームのソースを見て回って いるんですがテクスチャの幅と高さって変数として確保して保存しておいて 何の役に立ちますか?
>>382 そんなもん部外者に聞くなよ。
ゆとり教育云々言われても仕方ないぞ。
ちなみにそういった情報は自分で保持しなくても
Descとしていつでも入手出来る。
>>382 個人的な好みの問題だと思うが、俺なら保存しておく。
汎用クラスとしてゲームではなくツール類に流用しようとした場合、
ファイル上では320x240の画像を512x256に伸ばしてメモリに乗せることがあるし、
変換前と後のサイズをわかりやすい変数名で保存しておいたほうが
その後のコーディングがしやすいとか。
円周と線分の交差判定ってどうやりゃいいんでしょうか? 円周は楕円でも弧でもなく、完全な真円の周です。 線分は点Aと点Bを直線で結ぶ閉区間です。 // 中心point,半径r,点A,点B bool IsHit(const POINT& point,int r,const POINT& A,const POINT& B) { bool inA = (A.x - point.x)*(A.x - point.x)*(A.y - point.y)*(A.y - point.y) < r*r;// 点Aは円の内側か? bool inB = (B.x - point.x)*(B.x - point.x)*(B.y - point.y)*(B.y - point.y) < r*r;// 点Bは円の内側か? if (inA ^ inB){// 片方が内側で片方が外側なら return true;// 交差してる } double a = (A.y - B.y)/(A.x - B.x);// 線分の傾き double a_dash = -1/a;// 法線 // 円の中心を通って傾きがa_dashで長さが直径(2r)な線分を求めたら、 // 線分同士の交差判定をすればOKなのかな? // ああ、でも線分がX軸に平行だったりY軸に平行だったりするとzero divide errorが出るから……。 このへんで頭からプスプスと煙が噴き出して、関数を閉じれずに終了しました。 っていうか、もっとシンプルに解ける方法が密かにありそうな気もしますし。 誰かお助けを〜。
最適な方法かどうかは自信ないけど、とりあえずこんな感じでいけるかな? まず2点を結ぶ線分を拡張して無限長の直線を考えます。 円の中心と直線の距離を計算して、その距離が半径より長ければ、確実に交差しません。 半径より短い場合は、必ず直線と円の交差点が2点求まります。 その2点のどちらかが線分上にあれば交差してることになります。 y=a*x+bみたいに考えると0割したり3次元化が困難だったりするので、 x=t*(p2-p1)+p1とするといいと思います。 tが0〜1の範囲で線分を表せるので線分上の交差判定に便利っす。 あと点と直線の距離を求めるにもベクトル形式だと簡単かと。
>>386 それだと、線分が完全に円の中に入ったときに判定できないよ。
>>387 線分が完全に円に入った場合は、
媒介変数tが2点とも 0<=t<=1 を満たしません。
よって判定できます。
みんなあたまよすぎ
歳食えば覚えれるようになる。 今はまだ、脳味噌が適応出来て無いだけだろ。
要は慣れだからな
ダウンロードしなくても遊べるゲームが作りたいのですが WegEgg以外にそのようなツールはあるでしょうか? ふつうのノベルゲームを作る予定です。
Flash使え。
FlashだろうがHTMLだろうが、ダウンロード無しではそのそもデータを受け取れないが、 そんな常識を打ち破る新たなデータ転送方法が存在するのだろうか?
>>393 >>394 確かにダウンロードしていますね。
言葉足らずですみません。
やっぱりフラッシュを使ってみることにします。
回答ありがとうございました。
>>386-388 前半の基本方針はわかりました。
昨日「直線と点の距離」が利用できるだろうと思ってググったのに、全然公式が出てこなくて
へこんでたのですが、「点と直線の距離」でググればよかったのね…… orz
後半のほうは、どうすればいいのでしょうか。
double t0 = 直線と円の交点その1
double t1 = 直線と円の交点その2
if ((0.0 <= t0)&&(t0 <= 1.0)||(0.0 <= t1)&&(t1 <= 1.0)) return true;// 交点の少なくとも片方が線分上なので交差する。
こういう方針なのはわかるのですが、そのためのt0とt1の求め方がわかりません。
ググるためのヒントワードでもかまいませんのでよろしくお願いします。
「円と直線の交点」ってのは数IIで習うんだっけ。
>>396 ぐぐるためのワードが思いつかんので説明すると
円の方程式:|X-C|=r
直線の方程式:X=p1+t(p2-p1)
この2つを連立させればtに関する二次方程式が作れます。
途中でベクトル内積とか出てくるんだけど高校でやったっけな?
線形代数とか勉強した人にはとっつきやすいかもねぇ
内積は高校の範囲、外積は範囲外、じゃなかったかしら
解説ありがとうございます。 見た感じ、ググるだけじゃなくて高校数学の参考書あたりを買わないと調べようがないみたいですね。 ところで、さっき企画の人間と話したら、どうもこの円周と線分との当たり判定は不要だったようです。 申し訳ありません。お世話になりました。orz
あ、385は円周と線分の交差判定だから、線分が円の中に 入っている場合は、交差無しでいいのか。 俺なら、こんな感じで処理する。 点Aと点Bが円の内側か判定。(385の前半と同じ) 円の中心Cと直線の距離を計算。 距離が半径以下なら、円の中心Cから直線に降ろした垂線が AとBの間か判定。 垂線がAとBの間かの判定は、内積で簡単に判定できる。 ベクトルABとACの内積が0以上で、ベクトルBAとBCの内積が 0以上なら、CはAとBの間にある。 点と直線の距離の部分以外は、全て整数演算で可。
402 :
398 :2005/08/15(月) 01:38:40 ID:RimhRwB7
>>400 高校数学よりは大学の線形代数のほうがいいと思うなあ。
後はまあ、理系の友達の学生とかが身近に居ると良いかなw
最近は秋葉原行くと「ゲームのための数学」みたいな本が出回ってるから、そういう本でもいいんじゃない?
俺が持ってるのは「ゲームプログラミングのための3Dグラフィクス数学」1冊だけだが、これだけでも十分かな。
そいえばさっきの書きながら思ったんだけど、点と線分の距離は判別しなくてもよかったね。
二次方程式を解く際に判別式で解なしが分かれば衝突しないのが分かる。
どっちみち手数は似たようなもんなんだけどね
眠い頭で検証せずに記憶だけで書いてみる。記号なども適当なので間違ってるだろうな。指摘よろしくです。 円の範囲内(接触含む)に線分の一部でもあるなら真ということで。 線分座標[p0、p1] 円[座標 p、半径 r] ベクトル[v0、v1、v、q] スカラー[t0、t1、t] 内積[・] v0=p-p0; if(v0・v0 <= r*r) return true; v1=p-p1; if(v1・v1 <= r*r) return true; v=p1-p0; t0=v・v0; t1=v・v1; if(t0*t1 > 0) return false; v=ベクトル正規化(v); t=v・v0; q=v0-tv; return q・q <= r*r;
Windows用の2Dの格闘ゲームを作りたいのですが、DirectXを使用して作成できますでしょうか。 また、DirectXは言語ではなく他の言語(たとえばC++)と一緒に使う必要があるのでしょうか。 ご教授よろしくお願いします。
>>404 作成出来る。一緒に使用する必要がある。
藻前はDirectXを何だと思ってるんだ?
ハードウェアだと思ってるに300ペリカ
独立言語だと思っているに100ギタン
便乗質問 格ゲーってどうやって作るの? C++とDirectXは使えるとして、 当たり判定と必殺技のコマンド入力と エフェクトとゲージとコンボと… 他にはどんなものが必要? やっぱり当たり判定エディタとか作らなきゃダメ?
まぁ、当たり判定は視覚的に編集できないと厳しいね。 2D格闘ゲームなら、判定はただの矩形で十分。 市販のゲームもほとんど矩形。
410 :
404 :2005/08/15(月) 11:40:59 ID:ba4Jgt5h
>>405 ありがとう
>DirectX
技術の約束群と書かれていましたので言語みたいなものかと思ってました。
パクリと自分で考えた稚拙なアルゴリズムでなんとかゲームらしくなりました。 これを繰り返せばそのうち高スキルになるんですか? パクリアルゴリズムを使ってると成長しませんか?
>>411 中身を理解するよう努めれば、少しずつスキルは上がるだろう。
ブラックボックスとして使えば何も上がらないだろう。
まぁ、一切理解しないでパクルってのは
事実上不可能かと思うけど。
自分一人で作ってるのなら必要になったときに必要なものを作ればいい。
ツールなんてデータ構造が理解できない他人にデータを作ってもらうために作るわけだしな。 量にもよるけど自分ひとりならCSVのようなテキストでも問題ないでそ。
415 :
名前は開発中のものです。 :2005/08/15(月) 18:51:16 ID:R4QHw248
究極のエロゲーとはなに?
>>415 モンティパイソンの「究極のギャグ」を参考のこと
DirectXでゲーム作ってるんですけど、SDK更新したら ウインドウモードでフレームレートが上限30ぐらいしか出なくなっちゃったorz で、なぜかメディアプレーヤーと一緒に起動すると60出るんすけど解決法しりませんか? 学校のマシンとかでは問題なし、OSはXPで.NET 2003使ってまつ 一応OSクリーンインスコしたけど解決しなかったorz
>>417 とりあえずtimeGetTimeを使ってるんならtimeBeginPeriod(1)を
入れとけば直るよ。
他にもゲームの方でサウンド鳴らせば、やっぱり直る。
419 :
418 :2005/08/16(火) 00:25:53 ID:CS0RLrF5
いやでも、前半の二行見るとちょっと不安・・・orz
421 :
417 :2005/08/16(火) 01:37:37 ID:ZaX8mgXB
timeEndPeriodもちゃんと呼んどけよな
423 :
名前は開発中のものです。 :2005/08/17(水) 09:23:24 ID:aplD8U3k
格子上のマップの座標指定の方法なんですが □□□□ □□■□ □□□□ □□□□ というマップで■の座標を(2,1)とする人と(1,2)とする人はどっちが多いでしょうか? (2,1)だと(x,y)という考え方で(1,2)は(行,列)という指定方法です。 わかりやすさ、技術的な要素でどっちの方がよいのでしょうか?
>>423 関数の書式なら(2,1)の方をよく見る。でもExcelのワークシート関数は(2,3)だ。
C言語で2次元配列にビットマップを格納するなら[1][2]だが、BASIC系では[2][1]だったはず(未確認)。
個人的には、特に理由が無ければ(x,y)が分かりやすいと思うよ。
>>423 マップの場合、行とか列って概念を持ってきても混乱するだけ。
現実世界や世界地図の位置座標を行と列で考えるヤツはいない。
二次元配列の話なら map[x][y] が直感的だけど、
ゲッタ/セッタを作るなら好きにすればいい。
仕様によっては一次元配列のマップもアリだし。
僕は、424氏と同じく関数はx,yで、配列はy,xかな。
ランダムでその日の天気を決めるような設計なのですが、 天気の種類って 快晴、曇り、雨、雪、大雪、台風 くらいなものですかね?アホな質問ですいません。 一人で作ってるのでいまいち結論が出しにくいです。
428 :
名前は開発中のものです。 :2005/08/17(水) 15:44:14 ID:aplD8U3k
ありがとうございます。 やっぱx,yの方が自然ですかね・・・
>>424 場所によっては砂嵐とか・・・。
関係ないか。
>>427 雹、あられ、みぞれ、まだ色々ありそうだね。 雷とか。
どのくらい細かく天気を決めたいかに寄るんじゃないかと。
それこそ、『晴れ、曇り、雨、以上。』でもいいわけだし。
天気でどんな違いが起こるのかとか、そういったことが問題。
天気が適当に変化してかまわないなら、乱数で決めるよりは自分の望む比率で天気を集めて、
その集合を乱数使って順序入れ替えて使うとかが良いんじゃね?
割合が変化するようにしたいなら、順序入れ替えた集合の全体を使わず前半分だけ使うとかで。
降水量、気温、風速の要素を変化させて、組み合わせの結果、天気になるのも面白そうだなとか思った。
>>427 そもそも何のゲームでデフォはどんなシステムなのよ?
見かけだけ変わっても意味無いわけだから
システムに影響及ぼすパラメータのセットをいくつか創って
これは天気で言うと雨だよな、雪だよなと決めるのが正しいと思うが。
最初に枝葉末節を決めて逆算して創っても
ゲーム中で生かされてないんじゃ意味がない。
天気図記号見るのが一番早いな。
天気図記号 のイメージ検索でぐぐってみるといいと思う。
>>431 だから「これは天気でいうと」の部分が分からないんだろう。
あとタクティクスオウガのイメージになるが、別に天気がメインじゃないなら
天気から先に作った方がいいんじゃないかね。
DirectX9で2Dゲームを作ってるんですが、2Pキャラとかの色を変えるのに、8bitビットマップでのパレットチェンジってどうやるべきなのでしょうか? 描画時にDirectDrawを使えばできるそうなのですが、それを使わずにLoadTexture系での最初の読み込みでやりたいのです。方法としてはビットマップのパレット情報があるところを直接書き換えて、バッファから読み込んでやれば出来ると思うのですが。 本当にこんな方法でいいのでしょうか?
434 :
427 :2005/08/18(木) 15:02:08 ID:/lWWS+TM
>>429-432 どうもです。非常に参考になりました。
ちなみに8月みたいな「すごく暑い日」って
天気的に表すとなんて言えばいいんでしょう・・・?
集客が一気に下がる仕様にする予定です。
436 :
427 :2005/08/18(木) 17:59:26 ID:/lWWS+TM
>>435 どうもです。真夏日いいかも知れないですね。
気象庁のページも参考になりそうです。
ここは、夢を見始めた人と、夢を見終わった人が対立するスレでつね。
↑ スレみす orz
439 :
名前は開発中のものです。 :2005/08/19(金) 20:00:44 ID:i6ghyS11
モチベーションを、自家発電!! ヽ(`Д´)ノ
スクリプターとプログラマーの違いは何ですか。 個人的には同じに見えるのですが。
SEとプログラマーの違いは何ですか。 個人的には同じに見えるのですが。
余所板から誘導されて流れてきたんだが。 ブラウザゲーを作りたいんだが、プログラム書ける人の募集はここでやっていいものなんだろうか。 どうも、見た限りではプログラム技術のある人たち同士が交流する場所に思えて。単に募集だと板違いだろうか。
スマン。自己解決した。テンプレにあった。 板を「募集」とかで検索しても引っかからなかったが、「メンボ」で検索すれば良かったのね……。
444 :
名前は開発中のものです。 :2005/08/20(土) 23:59:43 ID:66u05oAv
今から勉強するなら何の言語がいいですか? Cは一通り終わりました。
↓444に釣られる人↓
446 :
名前は開発中のものです。 :2005/08/21(日) 00:13:10 ID:wRirf7Gu
↑釣りじゃねぇよ馬鹿
C極めたならもうなにもしなくていいよ
448 :
名前は開発中のものです。 :2005/08/21(日) 00:18:24 ID:wRirf7Gu
すいません。全然極めてないです。
やりたいことが(できるだけ簡単に)出来る言語、これしかないでしょ
450 :
名前は開発中のものです。 :2005/08/21(日) 00:55:39 ID:wRirf7Gu
>>449 この言語はこれから役に立つと思うよ、的な言語ってないですかね?
JavaとかPerlをやろうと思うんですが・・・
仕事で使うならC++は必須ですか?
452 :
名前は開発中のものです。 :2005/08/21(日) 00:57:36 ID:wRirf7Gu
>>451 お前いい加減にしろよ。
ストレスは他の手段で解消してくれよ。
ここで歓迎してる初心者ってのは「ゲーム作りに関して」の初心者なんだ。 質問の仕方を知らないネットの初心者とかのことじゃないからね。
JavaかC#にしといたら?
>>455 C#っていうのは前にちらっと本で見た限りではJavaに似ている感じだったんですけど、
どっちがどう違うんですか?
C言語を勉強しようとおもっているのですが 分かりやすいHPなどはないでしょうか 一応今見てるHPはあるのですが・・・ビミョ ちなみに自分は、昔にBASICをかじったことがある程度で Cについては無知です 最終的にはゲーム作りを目指してます。
>>456 さすがにそれぐらいは調べてこい。
ぐぐればすぐ出るんだから。
あと、別に今Cやってても別段問題ないから
先にC極めてこい。
>>457 猫でもわかる〜
460 :
名前は開発中のものです。 :2005/08/21(日) 11:11:36 ID:5HODsh+o
>>457 漏れはCはネットの無い時代
リファレンスマニュアルとCマガ見て
コンパイル実践しながら覚えた
あと個人的意見として、
良い本以上に纏められたHPは、まだ無いと思う
「猫」とかがオススメじゃね?
463 :
名前は開発中のものです。 :2005/08/21(日) 11:45:53 ID:5HODsh+o
「猫」良さげらしいな。さわりしか読んだことないけど、確かに分かりやすかった。とっつきが良くて。 すまん、R大だった;
464 :
457 :2005/08/21(日) 12:03:24 ID:YnZSE0Ct
ありがとうございます
>>458 わかりました。
ありがとうございました。
初心者相手に「猫」って略すのはどうかと思う。
3Dゲームを作ろうと MetasequoiaLEで形状を作ってxファイルで保存し、 ボーンを入れられると聞いたフリーソフト、Blenderで開こうとしたら エラーが出てxファイルが開けません。 Webで見つけたxファイルも開けなかったので保存時のミスでは無さそうですが・・・ ボーンを入れられる=xファイルが使えるって事ではないのでしょうか・・? 何か勘違いしてるのかな・・誰か経験者さんいたら教えて下さい、、
>>467 >ボーンを入れられる=xファイルが使えるって事ではないのでしょうか・・?
全く関係ない。
BlenderがどのバージョンのXファイル読めるのか調べればいいだけ。
チラシ mmo作ろうとしたけど ほかの人がすごいの作ってて、作る気うせた。 しかも、開発環境が悪いしなぁ〜 まともに3D扱えるようになりたい。
>ほかの人がすごいの作ってて、作る気うせた。 ぐらいだったら、何も作れないぞ。
そうだね
ほかの人がすごいの作ってて、俄然やる気が出ないとダメだな。
いちいち既存の、それも優れたものと比べようとするからだめなんだ 自分の成長を楽しまなくちゃ
まぁ上を見て萎える程度のヤツは プレイヤーで満足してろってこった。
475 :
名前は開発中のものです。 :2005/08/22(月) 00:48:18 ID:fa4xGUL6
VC++とAPIでゲームを作ってるのですが、リソース関係がよく分かりません。 ビットマップをリソースに組み込む方法が詳しく載っているサイトを教えてください。
猫
パワプロのサクセスとかギャルゲーとかの、テキスト文書が出てきて 物語を進めていくゲームを作る素人にもお勧めのフリー素材ってのはあるかな?
隣の山田さんの息子さんのいとこの友達の兄弟の…
479 :
名前は開発中のものです。 :2005/08/22(月) 10:10:45 ID:w5a71Afc
マックスドライブでPS2のセーブデータをPCに移したんだが あるゲ−ムでお金MAXにしたいんだが、誰か編集の仕方教えてくれないか お金のとこは書き換えたんだが、データが正常なものであるかどうかの行の 書き換え方が分かりません。正直、何処の板でレスすればいいのか分かんなかったけど ここでしました。
少なくともここはゲームを「製作」するための質問スレです。 家ゲ板で質問すればもしかしたら誰か答えてくれるかもしれません。
>>475 VCのバージョン書いてないんで詳しく手順は書かないが一応。
新規作成でリソーススクリプトを作成してその中にビットマップを作成。
プロジェクトディレクトリの中にリソーススクリプトファイル(.rc)を保存。
作成したリソーススクリプトファイルをプロジェクトに追加。
そうすればプロジェクトワークスペースにResourceViewが追加される。
VC.netだと少し違ったはずだが基本的には同じ。
483 :
467 :2005/08/22(月) 15:07:32 ID:9XCGy0zw
>>468 ありがとうございます。
>MetasequoiaLEとBlenderで読み込めるxファイルのバージョンが違う
自力で調べてみたのですが、読み書き時のxファイルのバージョンを
記述している場所を見つけきれませんでした・・。
xファイルのバージョンを調べるか変更できるツールとか
もしあったら教えて頂けないでしょうか?
度々すいません、
最終的に必要なのが Xファイルだとしても blender に読ませるのが Xファイルである必要はなかろう。
Easy Link Libraryを使ってるんですけどel4D::Flat::Load関数で黒以外を透過色に設定すると 表示した時透過した色が枠線のように残ってしまいます。 解決方法を教えてください。
企業などはなんのプログラムソフトを使っているんですか?
>486 C++が多いと思うよ VCとかCWとかgccとからしいよ その上にスクリプト層を構築しているみたいだよ
488 :
486 :2005/08/24(水) 03:39:11 ID:Z0PiQTNn
>487 ありがとうございます やっぱりc++は初心者には難しいですか?
>>488 C++は道具であって、全てを修める必要はないと言う事で。
あるいは文字通り、言語であると言う事で。
ぶっちゃけ、初心者が直列ダダ書きしても動く。
まず触って、動かして、それから綺麗な書き方を憶えていけばいい。
昔はBASICのダイレクトモードがプログラミングの勉強には 物凄く役立っていたんだけど、今はそういうの無いしなぁ。
>>490 おまえエスパーだろ。
俺の考えと全く同じだ!
選択肢が多すぎるってのと、すでに成果物がありすぎる
ってのは今の初心者にとってマイナスだろうな。
目的がプログラミングでなければすごく楽になってるんだけどな。
昔はゲームがやりたかったら自分で作らないといけなかったからね… 自給自足(・∀・)
迷ったらCだ
> ダイレクトモード これってインタプリタの対話モードよりスゴいの?
495 :
名前は開発中のものです。 :2005/08/24(水) 21:58:07 ID:wrz/wevS
昔はBasicインタプリタそのものがOSみたいなもんだったから シェルスクリプト代わりとしても使ってたわけで、 そういう意味ではすごかった部分もなくはないわな
すまんsage忘れorz
ストリーム再生について色々と教えて下さい。 まず、内蔵音源とは、サンプリングしたADPCM音源等をメモリに読み込ませて、 それでCPUに演奏させるという事で宜しいでしょうか。 欠点として、CPUやメモリの負荷を考えた場合、音楽に割くことが出来る容量等が 少なくなってしまい、結果的に音質やチャンネル数の面で妥協する事もある、と。 そしてストリーム再生とは、ディスクからリアルタイムにデータを読み取っては捨てる事で、 メモリの容量を食う事がなく、生録音した音楽を再生できる。 しかし、欠点としてCPUに高い負担を与えてしまい、 かつ音楽ファイルの保存でメディアの容量を大きく食ってしまうという。 この認識の時点で何か間違っているかもしれません。 分からないのは、まず「メモリストリーム」とは何か、という事です。 「CDストリーム」とは別にある言葉らしいのですが…。 昔は、ループ時に一瞬の切れ目が生じてしまうゲームも沢山ありましたが、 ああいうのがCDストリームだったのでしょうか。 あと、ストリーム再生で鳴らす場合の音楽は、WAVEやmp3などで保存してるのでしょうか。 手持ちの作品はそのままWAVEで保存していましたが、そうではない作品もあるんでしょうか?
2CHのゲームによくフラッシュで使われている声(八頭身などのかすれた声)を入れたいんですが あの声ってなんのツールを使って作っているんですか?
Flash製作者に聞くのが一番早いと思うんだがな 読み上げソフトならそれなりに色々とあるし
無知な質問ですがご指導頂けると嬉しいです。 ゲームプログラマー、ゲームデザイナーに憧れてそれらを目指そうと思っていたのですが、進路指導の先生の厳しい言葉やここの板のスレで給料や労働環境などを見て困惑してしまいました。 実際この仕事につくにはどれだけ大変でしょうか?(ゲーム会社に就職することの難易度や、高校から専門学校へ行き学んだだけでなれるものなのか) 自分が甘い考えを持ちすぎてることを自覚しました、どうか実際の状況を教えて下さい。
ゲーム会社に就職すること自体はそれほど難しくない。 理系大学に進んで数学や物理を学び、独学で3DやCGのこととかをしておくといい。 辛いのは就職したあと。給料、労働環境etc。 後は就職板のゲーム業界スレとかが参考になるかと。
>>500 とりあえず、ゲーム業界にかかわらず
100%確実な方法とか就職できる為のマニュアルはないから。
やりたい業種があって、どういう勉強すれば
と言うのならともかく、
業界に入りたいんですけど難しいですか?って聞かれても。
受検じゃねーし。
才能有る奴は楽々入った気がしてるだろうし
才能や技術があっても、その会社にそのスキルのニーズがなければ
入れないし。
難易度で一元的に考えてる時点でまだ甘いよ。
業界云々じゃなくて就職する事全般に関して。
入るの楽アル 出るの厳しいアルネ つくづく他業種に行きづらい職だよなぁ…
そか? 俺は出版、テレビ、ゲームの間をフラフラしてるけど。
>>506 スマソ
台風情報見ながら板間をフラフラしてたから
就職板のつもりで書いてたよ
むちゃくちゃ簡単なプログラム組んで、気分でアイコン作ったんですが どうやってexeファイルに設定するんでしょうか?
501-503回答ありがとうございました。本当に、まだまだ甘いですね。頂いた意見を念頭に置いてもっと一から調べていきたいと思います。 505板違い申し訳ありませんでした。携帯からなのですが、どこで板ルールは読めるでしょうか?もう一度熟読してきます。
>>508 exeを右クリックでプロパティ、そこにアイコンの設定なかったっけ?
なかったらスマン。
アイコンはリソースに組み込んで使えばよろし
便乗で質問 VC6.0のWin32Applicationプロジェクトで複数のアイコンを挿入している場合、 エクスプローラ上のexeファイルに表示されるアイコンを指定するにはどうすればいいですか? 自分で調べてみた範囲では、rcファイルに先に記述されているアイコンファイルが使用されていて、 その並びはリソースIDの若い順に整列されているようで、resource.hを適当に書き換えて対処しているのですが。
ウィンドウクラスのアイコン属性だっけ? それにLoadIcon とかすればよかったと思う。 いや、俺もあまり詳しくないのだが。。。
>>516 レスありがとうございます。
exeが実行される前の、exeファイルのアイコンについてです。
BCCでプログラムしている者です。
DirectXを利用して2Dのゲームを作ろうと思っているのですが、
ttp://rina.jpn.ph/~rance/directx8/04/02.html 検索して当たったのですが、DirectX8からは3D仕様になったとあります。
自分はただ高速で画像の描画処理さえできればいいのですが、
グラフィックボードがへぼいとこれからはダメなんでしょうか?
DirectX9の参考書の付録をコンパイルしても動きません。
グラフィックボードがへぼいと言うか古いと動かないものがある。 殆どはVRAMが足りなくて動かないものが多いかも。
スロットを自作したいのですがどなたか参考になるHPなどおしえてもらえないでしょうか?
522 :
名前は開発中のものです。 :2005/08/27(土) 15:58:34 ID:FLlnT8zW
ゲーム中のキーボードからの入力ってどうやりますか? 短編のアクションならウインドウプロシージャでやるんですが、 結構しっかりしたシミュレーションゲームを作ろうとした場合 時と場合によってキーを受けた後の反応が変わるのでそのやり方だと都合が悪い感じがします。 場面場面でスレッドを作っているんで、そのスレッドの中でGetAsyncKeyStateで読み取ってみたのですが Sleepが小さいと瞬間移動みたいになってしまい大きいとキーをしっかり受け取らなくなってしまいます。 皆さんはどうしてますか?アドバイスよろしくお願いします。
けっこうしっかりしたシミュレーションゲームなのに移動に要する時間の概念がないのか?
524 :
522 :2005/08/27(土) 17:13:07 ID:FLlnT8zW
>>523 移動に要する時間の概念というのはどういう事を指すのでしょうか?
ちなみに競馬シミュレーションです。
>>522 リアルタイムキー入力の基本が出来てない
GetAsyncKeyStateでメニュー選択を作る場合はコツが要る
526 :
名前は開発中のものです。 :2005/08/27(土) 18:13:08 ID:FLlnT8zW
>>525 ではGetAsyncKeyStateを使う事自体は間違ってないけど、
使い方を間違ってると言う事ですか?
DirectInput使えばいいじゃん
>>526 使っても出来ないことはないけど面倒くさいってことだろ
529 :
522 :2005/08/27(土) 19:01:12 ID:FLlnT8zW
普通は皆さんキー入力をどうやってるんですか?
>>529 ユーザーインターフェイス用のスレッドでメニュー系の入力をしているようだけど、
その場合Sleepの値は10〜50程度がいいと思う。
例えばSleep16で下キーの入力を受け付けている場合、キーが押されてからの
カウントを用意しておいて、
if(count==1 || count>32 && count%8==1){カーソルを一つ下に動かす}
てな感じで。※数値は好みで調整
キーリピートをOSが管理しているリピート機能と同じようにしたければ、
いっそのことWM_KEYDOWNメッセージを全て自前のキューに溜めておいて、
定期的にそれを処理するようにするとか。
どちらにせよイベントディスパッチのあるスレッドとユーザインターフェイスのスレッドを
どこまで分けるのか、ちゃんと設計しておいた方がいいよ。
531 :
名前は開発中のものです。 :2005/08/27(土) 21:54:13 ID:6u5MgHVu
Visual c++でゲームを作ろうとしているものです。 ランダムに表示される画像をクリックするとその画像だけ、 消えるようにしたいのです。 まだ始めたばかりなので知識少なくて・・・ InvalidateRect(hWnd,NULL,TRUE)を使うと他の画像も消えちゃう(泣 誰かご教授お願いします。 このスレ以外に教えてくれそうなすれがあれば誘導お願いします
もぐら叩きですか?
InvalidateRectを使わずに描画汁。
534 :
名前は開発中のものです。 :2005/08/27(土) 22:12:45 ID:6u5MgHVu
>>522 もぐら叩きのようなものです。
いくつもの画像を出現させるわけなのですが、
クリックor一定の時間がたつとその画像のみが消えるってのを作りたいです。
>>533 描画する際には使ってません。
消し方が分からないのでInvalidateRectを使ってみました。
初心者なもので見当違いなこといってたらすいません、、
535 :
531 :2005/08/27(土) 22:14:18 ID:6u5MgHVu
ミス
>>532 もぐら叩きのようなものです。
いくつもの画像を出現させるわけなのですが、
クリックor一定の時間がたつとその画像のみが消えるってのを作りたいです。
ソースでも出した方が分かりやすいと思われ。 始めたばっかりなら出してもいいと思うけど?
>>531 その現象が起こると言うことは、ウィンドウを最小化・元に戻しても全部消えてしまうのでは?
Windowsではいつどんな原因でウィンドウの表示内容が消されるかわからない上、OSによる自動再描画も
ほとんど頼りになりません。
WM_PAINTメッセージが発行されたとき、本来表示されているべき内容がいつでも再描画できるように、
バックバッファを持つなり全描画しなおすなりしなければなりません。
>>534 背景が真っ白とかなら
FillRect(HDC, RECT, GetStockObject(WHITE_BRUSH));
で塗りつぶします。
背景画像が用意してあるなら、その部分だけBitBltで上書きします。
※画像が矩形の場合に限ります
539 :
531 :2005/08/27(土) 22:23:29 ID:6u5MgHVu
>>536 調べてみます
>>537 ソースを出すというと、いじったWndProcをさらすだけでも結構長いと思うのですが、
大丈夫なんでしょうかね?
それとも画像を表示している部分だけでいいのでしょうか?
540 :
531 :2005/08/27(土) 22:27:38 ID:6u5MgHVu
>>538 ウィンドウを最小化・元に戻しても全部消えますorz
やはりバックバッファがポイントですか。
背景は用意してあります。
適当な町並みの画像ですが・・・
ということはBitBltで上書きは無理ですよね??
>>540 むしろBitBltで上書きしかないでしょう
542 :
541 :2005/08/27(土) 22:33:31 ID:BTVYEk37
おっと失礼、画像を消すときの話です。 もしバックバッファを使うのなら、バックバッファに対して背景画像をBitBltで上書きし、画面も更新します。 多数のキャラクタが重なって表示されている場合は処理が複雑になりますが。
543 :
531 :2005/08/27(土) 22:34:06 ID:6u5MgHVu
>>541 ぅぉそうなんですか
上書きとはその部分の背景をその場所に描き直すってことでしょうか?
なんか難しそうなのですが・・・
へたれですいません
544 :
531 :2005/08/27(土) 22:41:28 ID:6u5MgHVu
>>542 よくわかりません・・・(つД`)
指定した画像だけ消去という方法はないのでしょうか?
自分の作ろうとしているもので上書きを使うのには限界がありそうです
本当に初心者でスイマセン
545 :
531 :2005/08/27(土) 22:50:51 ID:6u5MgHVu
>>542 うおっできました!!
上書きしたらうまく行きました。
どうもありがとうございました。
ちなみにバックバッファのこと詳しく書いてある場所ないでしょうか??
自分の持ってる本には書いてありませぬでしたorz
このような質問だとプログラム板のほうがいいでしょうか?
>>544 初心者とかヘタレとか自分を卑下する言葉を使いすぎ
「指定した画像だけ消去」できるシステムを自力で構築するのが
プログラム言語を使った開発と言うものです。
構築例を1つ挙げるとすれば、
・初期化時にウィンドウのクライアント領域と同じサイズのバックバッファをCreateCompatibleBitmapで作成する
・画像を消すときは、消したい画像を管理している変数に非表示扱いの値等を入れておく
InvalidateRect(hWnd, NULL, FALSE);を実行
・WM_PAINTイベントでバックバッファを更新して画面に出力する
まずバックバッファに背景画像を全て描画する
背景の上に配置する画像を、非表示扱いのものを除いて描画する
バックバッファを画面に描画する
マシンパワーを消費しますが一番単純な構成です。
現在、HSPでローグライク(というか不思議のダンジョン系)を製作しているのですが マップを二次元配列で0なら壁、1なら部屋・通路みたいなかんじで作っているところで問題発生 まず、主人公と敵キャラは1つのマスに重ならない アイテム・罠・階段などは1つのマスに重ならない でも主人公や敵キャラはアイテムなどの上に乗ることができ、そのマスには床・アイテム・主人公の3つの情報がある必要がある ちなみに、将来的に壁の中からも攻撃してくるモンスター、とか○○を装備中は壁の中に入れる、みたいなこともしたい これらを実現するためにはマップ大の二次元配列を2つも3つも用意しなくてはならないのですか? 他によいアイデアあれば教えてください またローグライク作成に参考になりそうなページのアドレスなんかもお願いします
自分の作ってるゲームが 自分のPCの環境で 満足に動かないなんて悲しいな・・・・orz
549 :
531 :2005/08/27(土) 23:03:07 ID:6u5MgHVu
>>546 いろいろとすいません
詳しく書いてくれていて大変ありがたいのですが、
今の自分には理解しきれませんです。
バックバッファがわかってないので・・・
先ほどできたと言いましたが、20秒くらいすると上書きされないようになりました。
これもバックバッファをしてないせいでしょうか
>>547 0 移動不可
1 移動可能
2-何かしらの条件で通れる
これで解決だな
MAP作って必要な部分だけ配列に読み込んで表示するなりすれば
馬鹿でかいMAPも作成可能だな
2-何かしらの条件→2以上 何かしらの条件 MAP作って→テキストでMAP作って
HSPいいな。 今C言語勉強中だけど、HSPの方が楽しそう。
553 :
547 :2005/08/27(土) 23:24:44 ID:Azs9Zmmf
>>550 >>551 いや、通れる通れないの情報ではなく、ひとつのマスにアイテムと主人公が重なった場合の情報をどうすればよいか、という質問なんですが
例えば、(4,3)のマスに剣が落ちていて、その上に主人公が乗っている場合に
map(4.3)=1 ;床である(0なら壁)
map_item(4.3)=1 ;アイテムナンバー1が存在
map_char(4.3)=0 ;主人公が存在(1以降はモンスター)
のようにマップの配列を3つ用意する方法を考えていますが、もっとシンプルな方法があるのでは?と思っているわけです
でも確かに
0 壁(移動不可)
1 道(移動可能)
2 壁+主人公(壁の中に主人公)
3 道+主人公
4以降 モンスターたち
てやれば二次元配列ひとつ分減らせるな、と思ったり
>>549 WindowsAPIを使ってゲームを作る場合、「バックバッファ」という言葉は概念でしかありません。
画面に対して直接、消去→背景描画→キャラ描画を行うと、その過程が画面に映ってしまい
チカチカして見えます。それを防いだり、再描画を確実に行うための手法としてバックバッファを使います。
その正体はウィンドウと同じサイズのメモリ上ビットマップです。
逆にいえば、多少ちらついてもかまわないならバックバッファを使う必要はありません。
WM_PAINTメッセージの応答部分に、全描画ロジックを直接書いてしまってください。
それでそれなりに動くようになってからバックバッファについて考えましょう。
>>553 マップ配列を3つ用意するのも有効な手法だと思いますよ。
減らす方向で考える場合、必要なのは床と壁を格納する配列1つのみです。
キャラクタ(とアイテム)は座標タイプの配列を持っていれば、必ずしもマップ配列に書き込む必要がなくなります。
キャラクタの移動前に、移動先と同じ座標を持つキャラクタがいるかどうかループをまわしてチェックし、
何も無い、またはそのキャラクタと重なっても良いと判断されたときだけ移動するようにします。
>>553 どうせやるなら連番じゃなくて1,2,4,8,16,32,64…とした方がいい。 …と思う。
個人的に0から何かを割り当てるのはちょっと怖い。
558 :
名前は開発中のものです。 :2005/08/27(土) 23:41:41 ID:WtDTrIAF
あるメッシュPと点Eがあります。 EはPに内包されない、PとEは必ず一定以上の距離を持ちます。 EからPを見たとき、必ずPがEの前方になるような 最適な視線Dを求めたいんですが良い方法が浮かびません。 2次元の場合はわかるんですが、3次元の方がわかりません。 良い方法はありませんか? 最初Pの重心Cを求めて、D=C-Eとしたんですがこれは間違ってるみたいです。
559 :
547 :2005/08/27(土) 23:43:58 ID:Azs9Zmmf
>>555 なるほど、そんなのもありましたね。ちょっと調べて勉強してみます
>>556 その方法も考えたんですがフロア内のアイテムやモンスターの数が増えると処理に時間とパワーがかかりませんかね?
と思って試さずにやめたんですが、この程度では処理が重くならないのであればありだと思ってます
とりあえず一度試してみます
>>558 よく意味が分からないけど、どう間違っていて、どうなっているのが正解なの?
561 :
名前は開発中のものです。 :2005/08/28(日) 00:06:29 ID:WtDTrIAF
>>560 必ずメッシュPが視点位置ベクトルEの前方になるような視線方向ベクトルDを求めたいんです。
>>最初Pの重心Cを求めて、D=C-Eとしたんですがこれは間違ってるみたいです。
これだとPが直方体でEがPに極端に近い時、Pの頂点のいくつかがEの後方に位置してしまう可能性があるんです。
2次元の解法は、メッシュPの頂点配列v[n]があったとして
ベクトル v[i]-E と ベクトル v[j]-E の角度が最大になるiとjを選び出して
それを元にDを作るという方法です。
これを3次元で使ってみたら、よくわかりませんがうまくいかないケースがあって
この方法では何か足りないのかなあと思いまして・・
>>561 >PとEは必ず一定以上の距離を持ちます
>Pが直方体でEがPに極端に近い時
どっちやねん
>>562 つまりメッシュの外にあるってことです。
565 :
547 :2005/08/28(日) 00:45:52 ID:wlOQ/vuh
>>563 よく内容が理解できてないかもしれけど、
とりあえずEからのベクトルDがPの中を突き抜けて、かつEとPが極端に近くてPの頂点のひとつがベクトルDより前にあるようにすればいいんかな?
だったら、まず
>>558 の最後の行の方法で仮Dを決定する
そして、仮Dの出発点を通る仮Dの垂線を考えて、Pがその垂線を跨ぐようであったら跨がなくなるまでDの角度をずらしていく
ってのでいいのでは?
566 :
522 :2005/08/28(日) 01:01:52 ID:z/c2xUPz
>>530 すみません。
イベントディスパッチとユーザーインターフェイスの意味が分かりませんでした。
簡単な解説をお願いします。
567 :
560 :2005/08/28(日) 01:17:24 ID:ZsGktx/q
>>561 ふむ、なるほど。
まずメッシュPが凹で、点Eがその凹んだ所に位置してたら厳しいので、それは置いておくとして。
基本的にその2次元の時の方法を拡張してみたらどうでしょう。
2次元の時は点とメッシュの間に線が引ければOKだけど、3次元の時は面が間に入ることになると思うので。
試してないので間違ってるかもしれないけど。
>>566 ・イベントディスパッチ
OSから送られてくる、マウスやキーボード、ウィンドウ操作等のメッセージを最初に受け取って分配する仕組み。
GetMessage,TranslateMessage,DispatchMessage,WinProc等々があるスレッドがイベントディスパッチのスレッド。
MFCを使っている場合、OnKeyDownやOnDestroyのような、MFCが逐次生成する関数のほとんどが該当する
・ユーザインターフェイス
ぐぐれ
569 :
558 :2005/08/28(日) 08:26:41 ID:5K1mg1Sw
>>565 ,
>>567 どうやら難しく考えすぎていたようです。
D = normalize( 馬=0,m normalize( v[n] - E ) )
これで問題なく処理できるようになりました。
お答えありがとうございました。
テクスチャのサイズについて質問させてください。 DirectXでテクスチャをD3DXCreateTextureFromFileExで作成すると、 テクスチャのサイズは2のn乗でないといけないとあります。 また、ビデオカードによってはそれを正方形に取らなければ いけないとあるので、256×256などとした方がいいと思います。 つまり、512×256の画像ファイルを128×128でテクスチャを作成する場合は 縮小されるということで、その為にD3DXCreateTextureFromFileExにはFilterメンバが 含まれているということだと思います。 ここまでの認識はあっていますでしょうか? ここで質問です。私は2Dゲームを作成していてドットで描いたキャラを アニメーションさせたいのですが、256×256の画像ファイルに1コマ分のキャラを描いて、 128×128でテクスチャを作成します。 FilterにはD3DX_FILTER_POINTを選択したて描画させたところ、案の定キャラがボヤけてしまいました。 128×128でテクスチャを作成するのは少しでもビデオメモリを節約したいためです。 Filterを変えてみたり、いろいろ試してはいるのですがうまくいきません。 長文で申し訳ないのですが、どなたか回避する方法をお教えください。
画像ファイルのほうを128*128にしてみるとか
572 :
570 :2005/08/29(月) 20:40:59 ID:3SkpGT8h
>>517 解答ありがとうございます。
画像ファイルのサイズを統一していろいろな動きをさせるため、
128×128だとはみ出てしまうことがあります。
そのためテクスチャサイズより大きな画像ファイルが必要なのです。
今回は分かりやすいように画像ファイルは256×256と書きましたが、実際は200×200
程度でやろうと考えています。(まだ全部のドットができていないので分かりませんが。)
こちらもできるだけ節約したいですので。
573 :
570 :2005/08/29(月) 20:43:12 ID:3SkpGT8h
テクスチャ座標を 必要なサイズ分に設定すればいいんじゃねーの。
どういうコードを書いてるかで、解決方法が違うような気がするが… D3DSAMP_MAGFILTER とか?
ゲ製作には数学の知識必要? シューティングは〜〜 アクションは〜〜 みたいな感じで答えてもらいたいです
>>576 シューティングもアクションもRPGもSLGも数学は必要です。
足し算とか。
>>576 とりあえず、プログラマなら数学は必須。
関数の概念が解らんと話にならない。
数列の概念が解らないとかなり苦労する。
プログラマと濃いめの話をする企画ももちろん必要。
音楽も、音楽数理をプログラム用の二進十六進に翻訳しないといけないので必要。
絵描きくらいじゃないか?数学の知識いらないのは。
ジャンルは関係なし。
580 :
570 :2005/08/29(月) 23:04:57 ID:3SkpGT8h
>>574-575 ありがとうございます。
>>574 テクスチャ座標を変えても引き伸ばされるだけで変化はありません。
また、テクスチャ座標は四角形ポリゴンの左上を(0.0f, 0.0f)、右下を(1.0f, 1.0f)で、
画像ファイルをそのまま貼り付けるようにして、オブジェクトのサイズ、テクスチャ座標を
変えなくてすむように組んでいます。
>>575 D3DSAMP_MAGFILTERはD3DTEXF_POINTを選択しています。モザイクみたいにボヤけてしまいます。
他のでもダメでした。
画像ファイルからテクスチャを作るのにすでに縮小されていて、描画時にテクスチャ座標や
フィルタを変えても、元のテクスチャが縮小されているので潰れている感じです。
この現象は画像ファイルより大きいテクスチャサイズでやっても起きると
思うのですが、みなさんどのように回避なさっているのでしょうか?
私の場合はドットのキャラなのでとても見れないような潰れ方をしてしまいます。
引き続きよろしくお願いいたします。
>>580 いやだから、はじめから2の乗数サイズのテクスチャに絵描けよ。な?
>>580 >引き続きよろしくお願いします。
お前の状況説明じゃ効率悪杉。
他人は皆エスパーではないから、当該箇所のソースを晒せ。
お前がどこでどうチンプンカンな組み方してんのかは
ソースが語ってくれるだろう。
583 :
485 :2005/08/30(火) 01:23:39 ID:dVMP/S6E
この質問はスレ違いでしたか?
>>583 回答が無いのは皆知らんということだな。
俺もELを使ったことがないのでわからん。
自分が以前遭遇したケースでは
Direct3Dでピンク色のカラーキーを持つテクスチャに
バイリニアなどのフィルタを適用した時
ピンク色の枠が残ったことがあったな。
どうしてそうなるのか、回避策はあるのかは
↓よろしく。
585 :
570 :2005/08/30(火) 01:52:44 ID:ZNqAu9VE
>>581-
>>582 字足らずで申し訳ありません。
ウィンドウは640*480で、1つの画像ファイルは256*256。
・テクスチャの作成
LPDIRECT3DDEVICE9 device; LPDIRECT3DTEXTURE9 texture; D3DCOLOR colorkey;
D3DXCreateTextureFromFileEx{device,"sample.bmp",128,128,0,0,
D3DFMT_A4R4G4B4,D3DPOOL_MANAGED,D3DX_FILTER_POINT,D3DX_FILTER_POINT,
colorkey,NULL,NULL,texture};
・サンプラ ステートの設定
SetSamplerState(0,D3DSAMP_MINFILTER,D3DTEXF_POINT);
SetSamplerState(0,D3DSAMP_MAGFILTER,D3DTEXF_POINT);
SetSamplerState(0,D3DSAMP_MIPFILTER,D3DTEXF_POINT);
・オブジェクトの設定を描画
FVFフォーマット(D3DFVF_XYZRHW | D3DFVF_DIFFUSE | D3DFVF_TEX1)を使い、
四角形オブジェクトのサイズ256*256(比率を画像ファイルに合わせます。一応同じで書きます。)、
UV座標左上(0.0f,0.0f)、右上(1.0f,0.0f)、右下(1.0f,1.0f)、左下(0.0f,1.0f)
に設定し、DrawPrimitiveUPで描画。
このような感じです。
これで描画すると、実際の画像ファイルよりドットが荒く、荒くなる分潰れてしまいます。
>>583 そんなサポート打ち切られたへんてこりんなDLLは捨てなさい
DLLじゃなくてヘッダファイルだけどな
>>570 画像のサイズを4分の1にして、画質が劣化しない方法を探している、ってこと?
ディスク上にあるファイルのサイズは圧縮、解凍できるだろうけど、
実際に描画される画像のデータ量を減らせば、画像が荒くなるのは当然かと・・・
一度、その256*256のファイルを128*128で縮小して、
それを256*256に拡大して最初の状態と比べてみては?
589 :
588 :2005/08/30(火) 09:18:55 ID:JbgSuFoe
>一度、その256*256のファイルを128*128で縮小して、 >それを256*256に拡大して最初の状態と比べてみては? いや、レタッチソフト上でってことね。
590 :
570 :2005/08/30(火) 21:35:30 ID:ZNqAu9VE
>>589 レタッチソフトを使っても画像が荒くなってしまいました。
よくよく考えてみれば、一度データ量を減らしているのですからレタッチソフトでも
プログラム上でも画像が荒くなってしまうのは当然のことなのですね。
結果として画像ファイルを256*256で、テクスチャサイズも256*256でやる方向で
いこうと思います。
私の場合はゲームを始める前にすべてのテクスチャを生成してビデオメモリに入れてしまおうと
考えていたのですが、テクスチャサイズを256*256にし16bitで100枚生成するとメモリ消費が
13Mくらいになってしまい、かなりの消費量になってしまいます。
さすがにこちらもどうにかしなければいけないですね。
今回はご相談に乗っていただきありがとうございました。
キャラクタの移動速度を上げる場合どのような処理を行えばいいでしょうか。 1.キーが押されているかどうか調べるスレッドのsleep時間を短くする 2.一度に移動するピクセル増やす という二つの手法を考えました。 キーが押されているか調べるスレッドでは押されているかどうか調べ、障害物の全て との当たり判定をしてぶつからなければ移動をしています。 前者は負荷が上がるのが問題で後者は細かい動きが出来なくなるのが問題です。
原理的には1は細かい操作が出来るけれど普通は2かと
593 :
名前は開発中のものです。 :2005/08/31(水) 02:13:03 ID:x++Ma5TM
凄く参考にならないと思うけど折れてきな考え方 タスクシステムありき、じゃないんだよ ゲームを実装してたらタスクシステムになった、ってことじゃないかと 例えばオブジェクト指向的に考えれば 大抵のゲーム上の物体には「運動する」と「表示する」って動作があるでしょ そうしたらそれぞれのクラスにMove()とDraw()の2関数を付けりゃいい ゲーム上にはゲーム上の物体が沢山あるからコンテナで整理しておく。だから vector<Object> objects; 全てのオブジェクトを1フレーム動かしたいから for( vector<Object>::iterator it = objects.begin(); it != objects.end(); it++ ) it->Move(); これがいわゆる昔のタスクシステムに非常に近い動作になってる。 こんなんでいいんじゃないんですかね そんな難しく考える必要ないっすよ
UMLとかJavaとかC++とか、 オブジェクト指向に関する文献は色々ありますが、 デザインパターンを覚えるには何が最適ですか?
デザインパターンは覚えるとか、そういう類の物ではないと思うよ。 よく使う概念に明確な名前を付けることによって、コミュニケーションや 思考の整理に役立てようっていう話。 ただ、GoFのパターンってのが有名すぎて、デザインパターン=GoFのパターン みたいになってしまっているが。 GoFのパターンを使う場合でも、あれを全部丸暗記するというのも間違っている。 パターンカタログの中から、最も適したパターンを探すという使い方をするのが 正しいデザインパターンかと。そういうことができるように名前を付けたわけだし。 ようするに、辞書みたいに使うもの。 自分でよく使うパターンを見つけてカタログ化しろとGoFの本には書いてあるが、 実際にそんなことしてる人は世界中探しても数人しかいないと思う。
オンラインゲーム等で使われるBOTについて 質問なんですが。 BOTを作るにはどういった知識が必要なんでしょうか?(Cとか) またできあがったツールを使うには どういった知識が必要なんですか? 詳しい方ご教授願います。
m9(^Д^)プギャー
600 :
名前は開発中のものです。 :2005/08/31(水) 12:04:47 ID:FYa6ikAL
あ
>>598 BOTを自作しようたぁ見上げた心意気だが、あれは既に開発ノウハウを持ってる人が
片手間に作るもので、BOT作るためにプログラム覚えるなんて効率悪すぎる。
半年や一年で作れるようになるもんじゃないしね。
ちなみにWindows用のBOTを作るとしたら、CかC++,WindowsAPI,ちょっとした画像解析,
DLL関連に手をつけることになると思うよ。使うツールはVCかBCCあたり。
>>601 なるほど、そう簡単にはいかないようですね、
取り合えず片っ端からプログラム関連の参考書等
を買ってきて、基礎から勉強していきます、
まあ簡単なゲーム等作ってたりして徐々に覚えていきたいと、
思います。
ありがとうございました。
bot 作るといっても MMO と FPS で全然違う話になる。
>>602 がハナから MMO のつもりで言っているのなら余計なおせっかいだけど。
>>603 FPSってSOCOMとか007みたいなヤツでしたっけ?
いちおMMOのつもりです。
勉強しようとする心意気は別にいいのだが 他のプレイヤーの迷惑になることはするなよ
MMOのBOT=通報ものだからなあ
BOTの使用は単純に「ズルい」し他のプレイヤーから凶弾されて当然だけど、 運営側からペナルティーが課せられるのはしっくりこないなぁ。 チートと違って、ゲームのルールにのっとってプレイヤーを操作するのを AIに代行させてるだけだろ? いやMMOやったことないからそう感じるのかもしれんが。
多くの客がズルいと認識してるものにたいして運営側が対応しなかったら、 そのネトゲから客が逃げてしまうからじゃないかな。 技術屋の理想的には、ペナルティではなくてソフトウェア的に対応するべきだという 主張をしたいのは分かる。
>>607 ゲームのバランス取りでは
単位時間あたりの人間の忍耐力も加味されますよ。
端的に言えば、文字パズルなんて
総当たりでやれる事前提じゃ成り立たないでしょ?
610 :
名前は開発中のものです。 :2005/08/31(水) 19:54:57 ID:gWe63Nfe
ゲームの効果音ってどうやって作ってるんでしょうか? 聞いた話ではアナログシンセで作ってるそうですが、 銃の音とか作れそうも無い様な気もするんです。
普通にサンプリングしてある音を買うが。
612 :
名前は開発中のものです。 :2005/08/31(水) 20:12:12 ID:gWe63Nfe
ではそのサンプリングCDを出しているメーカはどうやって作ってるんでしょうか?
普通にサンプリングしていると思うのだが。
>>610 とりあえず、銃ならMIDIのgunshotを録音すれば事足りるよな。
615 :
名前は開発中のものです。 :2005/08/31(水) 20:24:57 ID:gWe63Nfe
SF系のレーザーの音や駆動音などもですか? あと銃の音や兵器の効果音等もシンセで、 生音サンプリングはあまり使わないと聞きましたが。 (機密に関わるので録音させてくれない、或いはゲームの雰囲気に合いにくくなるなどの理由) 蝉の声等の自然音(?)はサンプリングらしいですけど。
>>615 SFレーザーや駆動音、銃や大砲の発射音・爆発音なんかの
素材自体はほとんどMIDIの市販音源でカバーできる。
音の種類自体は何万とパターンが既に用意されている。
あとはエフェクトかけたりして好みの音に仕上げれば
少なくとも俺の思いつくものはカバーできる。
レーザー音なんかは波形編集ソフトで直接作るって手もあるよな。
で、その市販されてる音源はどうやって録音してるかっつったら
やっぱ生音を拾ってるんじゃないかか?
全然ゲ製作技術に関係ないなスマソ
今は当たり前のようにPCM使ってるが、FMやPSGしか音源がなかった時代もあったわけで。 その頃は音声サンプルが必要な銃とか兵器の効果音はどうやって作ってたんだろうね。うふ。
>>617 別に最終的にその音源に合わせてるだけなんだが。
録音機材から何から市販レベルだと思ってるの?
無知発見
夏休みも終わったというのにまだアフォが湧いてるのか
夏休みの終わった直後だからわいてるんだよ。
質問スレで解答もかかずに勝ち誇ってるだけって 何しに来てるんだろね……
>>617 FMやPSGでは実音の再現というのは非常に困難です。かろうじてPSGを1音サンプ
リングのように使ってノイジーな再生音にする技術がありましたが。
逆に実在しない適当な音(ゲームっぽい音)というのは、レーザー系音はFM、発破音は
PSGが得意でした。FM音源はオペレータの組み合わせを変えるだけでノイジーに変わり
ますし、慣れてくると周期の有る効果音だと狙って設定できるようになります。
あとは、音階の操作で最高分割の音符をトリッキーに配置して効果音にするという技法
が普及していました。
624 :
厚樹 :2005/09/01(木) 17:38:54 ID:8ft2lecV
高校の事なんですが・・・。 大谷高校と東大谷高校の違いを知ってる人教えて下さい!
質問失礼します。 @ネガティブな批評を受ける 批評自体は大歓迎。 でも、殆どの場合ネガティブな意見しか出てこない。。。 正直、鬱になる。 Aネットで批判にあう 真剣に書いてくれる人を探すのに一苦労。 殆ど誹謗中傷。 勘弁してください。 Bゲームが完成間近になる これは俺だけかも。 以上の条件で、一気にモチベーションが低くなります。 これをブロックする精神の壁の作り方を教えてください。 一番酷かったのは、 「早く作れ、ボケ」ってメールが来た時、、、 「うわぁ、俺こんな奴の為に作ってるんだ。。。」って。。。orz
早く作れ、ボケ
627 :
625 :2005/09/01(木) 17:56:16 ID:Q4sUN8Q1
>>626 orz
貴方、嫌な性格してますね。。。
>>625 は何のためにゲームを作ってるんだ???
他人から誉められたいから作ってるのか?
そうじゃないだろ!ゲームは自分が作りたいから作る。他人の意見なんか気にすんな。
他人から誉められたい、てのも動機の一つだと思うぞ。
ただ、一緒に遊んでた奴に貶されて、もう遊びたくないと思うのは普通だな。
責任が無かったら止めてもいいし、意地でやってもいいし。
結局自分で決めること、好きにすれ。
もし、会社組織内なら、
>>625 よ、速く作れボケ!
630 :
625 :2005/09/01(木) 18:07:11 ID:Q4sUN8Q1
>>628 「自分が作りたいから作る」ってのは一理あるのですが、
自分の作るのはもっぱらネット対戦型ゲームなんですよね。
まず「ユーザーありき」なわけです。
「他人から誉められたいから」って気持ちもありますが、金の為にやってます。
631 :
625 :2005/09/01(木) 18:11:33 ID:Q4sUN8Q1
で、やっぱ他の方は、意見とか全く聞かずに作ってる? 意見聞かずにやると、モチベーション維持できんのかな。。。
つーか金銭が絡むものはモチベーション関係なくさっさと作れよ
金の為にやってるなら、モチベーションは関係ない、するべき事をやれ。 (金額にもよるがな。
634 :
625 :2005/09/01(木) 18:14:22 ID:Q4sUN8Q1
>>632 なんで?
そんな契約、ユーザーと交わしてないけど?
>>634 納期がないんだったらいくらでもまったりできるよね。
@、Aに関してはネットから一時的に離れておいて、
開き直れるようになってから、公表していくとか。
どっちにしろ、公表すれば批評は来るわけだから、自分がダメな時期は近寄らないようにしてみる。
Bに関しては、完成間近になったら次の目標を立てて、
完成するまでは次の目標には一切手を付けない、とか。
まあ、まずはネット以外でモチベーションを上げる方法を探すのが良いんじゃない。
精神的な問題は、性格によるから中々思ったようにはいかないと思うよ。
636 :
625 :2005/09/01(木) 18:29:25 ID:Q4sUN8Q1
>>635 > 近寄らないようにしてみる。
なる。
そういや、ガンツの作者も同じ事言ってました。
つまり、見るときは覚悟しろってやつですね。
> Bに関しては、、、
難しそうw
でも少しづつ進んで行くのは正攻法ですね。
やっぱり皆さん、色々やってますなぁ。
ありがとうございました。
賞賛以外受けたくないのなら ネットには発表しないことだね
ソースコードのどこで落ちているのか、ステップ実行で調べてみ。 そうじゃないとこっちはよくわからん。
つかたぶんテクスチャファイルが無いとかそんなんじゃない? その辺注意して調べてみてくれー
641 :
638 :2005/09/01(木) 23:31:28 ID:lq3LBRvT
>>639 // Create the scene geometry
if( SUCCEEDED( InitGeometry() ) )
ここで落ちているみたいですが、こうなるとInitGeometry()に問題があるのでしょうか?
>>640 コンパイルで生成された実行ファイルと同じディレクトリに置いてあるので、
それは無いと思います。。
>>641 更にInitGeometryの中に入ってステップ実行。
具体的に落ちてる部分から徐々に推論して原因を探し出せ
643 :
638 :2005/09/02(金) 18:11:53 ID:6wfyDXu3
>>642 InitGeometry()の中まで入ったところ、
// Use D3DX to create a texture from a file based image
if( FAILED( D3DXCreateTextureFromFile( g_pd3dDevice, "banana.bmp", &g_pTexture ) ) )
この行で「Not enough memory for selected operation」と表示された後、
「Stopped on exception throw」と表示されました。
十分なメモリが無くて例外エラーとはメモリ関連のバグがあるのでしょうか?
それと、Turbo Debuggerを使用するとき、
画像ファイルは実行ファイルと同じディレクトリに置けば良いんですよね?
>>643 具体的に原因が出てるじゃん。
十分なメモリが無くてビットマップを読み込めなかっただけ。
古いビデオチップ使ってるんじゃない?
645 :
638 :2005/09/03(土) 00:02:58 ID:6wfyDXu3
>>644 チップセットがSiS651のビデオメモリが32MBなので256×256のビットマップが
読めないっていうことは無いと思うのですが…。
何らかの解決策は無いのでしょうか?
>>645 とりあえずD3DXCreateTexture〜の戻り値チェックかなあ。
そこから予想できる状況ってないかねぇ
ゲーム製作技術@2ch掲示板 扱う話題 ・プログラム、グラフィックス、サウンド、デザイン論などをゲーム製作の視点から ・ツール(HSP、ツクール等)についての話題 ・ゲームの共同製作やプロジェクト活動 ム板向きだと思うが
すみません。確かにそうでした。 移動します ノシ
651 :
638 :2005/09/03(土) 21:32:24 ID:8PNi5yWJ
>>646 ディスプレイは32bit、画像ファイルは24bitです。
色数が違うと何かまずいのでしょうか?
>>647 if (SUCCEEDED(D3DXCreateTextureFromFile( g_pd3dDevice, "banana.bmp", &g_pTexture ) ) )
{
MessageBox(NULL, "成功", "", MB_OK);
}else{
MessageBox(NULL, "失敗", "", MB_OK);
}
こんな感じで戻り値をチェックしようとしたのですが、
メッセージが表示される前に落ちました。
D3DXCreateTextureFromFileの中に問題があるのでしょうか?
それとも、戻り値のチェック方法がまずいのでしょうか?
g_pd3dDeviceの初期化に失敗してるとか?
banana.bmp 以外のファイルは試してみた?なんか怪しい・・・
654 :
638 :2005/09/03(土) 23:37:28 ID:8PNi5yWJ
>>652 Tutorial04_Lightsまでは正常に動作したのでそれは無いと思います。
>>653 自作の画像を使って、ということでしょうか?
それはやってみましたが、それでも強制終了してしまいます。
JPEGでも無理でした。。
打つ手無し、DX SDKの再インスコ、コンパイラの再インスコ、ビデオドライバの再インスコ、OSの再インスコ。
ま、どうせDXのバージョン問題だろ
コンパイラのバグでも踏んだかな? BCCには、コンパイラの最適化オプションなんてあったっけ?
多分SiSが地雷では無いかと…
ちなみにVCには、速度優先の場合に、最適化のバグが存在する。 まあ滅多に踏むことは無いけどな。
660 :
638 :2005/09/04(日) 16:51:32 ID:MpatBQbD
>>655 打つ手なしですか。。分かりました。色々試してみます。
>>657 最適化のオプションはありますよ。最適化を変更しても変わりませんでしたが。
>>658 インターネット上で公開されている、DirectXのゲームで落ちることは無いのですが…。
661 :
名前は開発中のものです。 :2005/09/05(月) 20:14:25 ID:vmN6JKuz
>>661 これ以上噛み砕けない(=君がまだそのレベルに達してない)ので
HSPでも触っててください
WindowsAPIでゲームを作っていますが、PeekMessageを使うとCPU使用率が100%に なってしまいます。 これを解決するためにメッセージが無い時に実行するメインループの中で if (16 < newtime - oldtime) /* newtime、oldtimeはDWORD newtimeはGetTickCountで取得 */ { // 画面更新とか oldtime = newtime; } else ; という処理を行い1フレーム経たないと処理を行わないようにしてみたのですが、 CPU使用率は100%のままでした この解決策は、メインループを別スレッドにするしかないのでしょうか?
メインループを別スレッドにしても解決しねぇよ。 else ; を else { Sleep(1); } にして様子を見てみろ。 様子ってのは、CPU使用率とか、操作感覚がもっさりしてきていないかとかだぞ。
まあまあおまいらモサーリ汁
666 :
663 :2005/09/05(月) 22:07:37 ID:jOrBZ8aQ
あ……解決しました。 したのはうれしいのですが、理由がわかりません。 Sleep関数は引数で指定したミリ秒だけ処理を中断する関数ですよね? えと、だとすると上のコードでも16msec経過するまで何もしないから、 こうしても変わりは無い気がするのですが・・・・・・・
>>666 「経過時間の取得と比較、そしてループ」という処理を毎秒数百万回行っているはず。
668 :
663 :2005/09/05(月) 22:18:47 ID:jOrBZ8aQ
・・・・・・納得です、余りの自分の馬鹿さ加減に泣けてきます。 そりゃあ毎クロック単位で処理を実行してたらCPU100%にもなりますね。 ありがとうございました。
669 :
663 :2005/09/05(月) 22:53:03 ID:jOrBZ8aQ
すみません、もうひとつだけ質問させて頂きます。 キャラクターの画像を表示する座標を格納したRECT構造体を使用して、キャラクターをウィンドウに描画 しています。 その際に、キー入力で移動するようにプログラムを組みました。 画面のクライアント領域からはみださないように、移動関数の条件指定として以下の指定をしました。 下を押したとき if (RECT.bottom + move <= HEIGHT) // moveは移動する座標、HEIGHTはウィンドウ作成時に指定した高さ RECT.top += move; RECT.bottom += move; } 右を押したとき if (RECT.right + move <= WIDTH) // moveは同上、WIDTHはウィンドウ作成時に指定した幅 RECT.right += move; RECT.left += move; } 上と左に関しては問題ないのですが、この二つだけはクライアント領域からはみだしてしまいます。 一体どうしてでしょうか?
>>669 サンプルはうまくいく方といかない方、たとえば右と左を出した方が回答者に理解されやすいよ
ところで、WIDTHの値は本当にクライアント領域の幅?ウィンドウサイズ(枠込)とごっちゃになってない?
671 :
663 :2005/09/05(月) 23:50:42 ID:jOrBZ8aQ
>> サンプルはうまくいく方といかない方、たとえば右と左を出した方が回答者に理解されやすいよ 了解です、気をつけます。 >> ところで、WIDTHの値は本当にクライアント領域の幅?ウィンドウサイズ(枠込)とごっちゃになってない? え〜と、CreateWindowの時に指定した引数のnWidth、nHeifhtですが、これはクライアント領域とは違うのでしょうか?
>>671 CreateWindow,MoveWindowなどで指定するサイズは、タイトルバーやメニュー,枠を含めたウィンドウサイズです。
クライアント領域のサイズは、このとき指定したサイズより小さくなります。
スクリーンショットをペイントにでも貼り付けて、サイズを確認してみるといいですよ。
ゲームやツールバーを作成するときには、AdjustWindowRectで調整してから作成するか、
作成後にGetClientRectで差分を算出してサイズ変更します。
>CreateWindowの時に指定した引数のnWidth、nHeifhtですが、これはクライアント領域とは違うのでしょうか? 違います!(キッパリ
>>638 遅レスだが
>D3DXCreateTextureFromFile
この関数は自動リソース管理(D3DPOOL_MANAGED)を使う。
・古い(orマイナーな)ビデオチップ(DirectX7以前の世代)
・古いドライバ
の組み合わせによってはD3DPOOL_MANAGEDが正常に使えない場合がある。
戻り値が正常にも関わらず画面上では不具合が出たりする場合もある。
試しにD3DXCreateTextureFromFileExを使い、引数にD3DPOOL_DEFAULTを
使ってみろ。
>>674 638ではないのですが、それってD3DXCreateTextureFromFile()だけの問題ですか?
それともD3DPOOL_MANAGEDを使う場合は常に考慮する必要があるのですか?
>>669 タイトルバーの幅とかはWin32APIのGetSystemMetricsで取れる
引数は勝手に調べておくれ
プログラム版から誘導されました、これから本格的にゲームを作りたいんですが、どの言語が一番適していますか?
質問が曖昧で目標もなければ具体性もないので適当に「C++」と言っておく
ジャバはどうですか?
680 :
名前は開発中のものです。 :2005/09/06(火) 13:46:46 ID:dSknIvh0
JavaでもC#でもHSPでもどれでもいいよ 迷ったら阿弥陀くじで決めればいいよ
俺も何でもいいに一票 っていうか、0から作る前に、ツクール系とかで1本作ってみろと言いたい。
>>681 わしもそうするべきだと思う。
ゲーム作るって言っても、ゲームの本質的な部分なんて2割ぐらいだからな。
それ以外の操作系とか全然関係ない所の労力のほうが必要になるからなぁ。
ゲームの中心部分作ってるときはモチベーションも保たれるけど
それ以外の基本的なところ作ってると飽きてくるからなぁ。
そういった意味でもシューティングはゲーム作ってるのが一番実感できるな。
RPGとかはフラグ管理してるだけで全然作ってておもしろくない。
ズブの初心者です。 最近mugenをやっていて自分でもキャラを製作しようと 思い立ったのですがキャラを切り出し、ツールに登録する際に 切り出したキャラの背景色を上手く消すことができません。 様々なサイトで調べましたが、主にフォトショップなる ツールを使用してでの説明が書かれているので、 当方では理解できません。 どなたかご教授を願いたいのですが。
>>682 モチベーション保つのは大変だよねえ
今入力のとこ組んでるんだけど、やる気全然でないし。
685 :
638 :2005/09/06(火) 16:49:01 ID:zSlQhhSE
>>674 D3DXCreateTextureFromFileEx( g_pd3dDevice, "banana.jpg",D3DX_DEFAULT,
D3DX_DEFAULT,D3DX_DEFAULT,0,D3DFMT_UNKNOWN,
D3DPOOL_DEFAULT,D3DX_DEFAULT,D3DX_DEFAULT ,
0,NULL,NULL, &g_pTexture )
に変更してみましたが、相変わらずです。
ビデオチップとの相性が悪いのかな?
>>683 PhotoShopの使い方が知りたいのなら、CG板へ行ってらっしゃい。
もし買えるほどお金がないのなら、Gimpというフリーソフトでも試してみなされ。
しかし、背景を切り抜くみたいな処理はPhotoShopで行うと非常に簡単なので、
お金があれば是非とも買うべし。
687 :
683 :2005/09/06(火) 18:55:17 ID:MYca+XQa
>>686 スレ違い、ご教授、大変に申し訳ありません。
やはりお金を使わない方向でやりたかったもので。
Gimpですか。解りました。
貴重な情報、感謝いたします。
688 :
663 :2005/09/06(火) 20:06:01 ID:puJpAbTg
遅くなってしまいましたが、皆さんどうもありがとうございました。 おかげさまでクライアント領域からはみださずに移動させられるようになりました。 今作っているのが完成したら、どこかに適当にアップしますので、是非遊んでください、
689 :
644 :2005/09/07(水) 02:07:09 ID:q5bn2Yx7
名前欄間違えた。俺は644じゃなくて674。
>>689 まぁ、今回は特殊例かも知れないけど
ユーザーならともかく開発者としてそれはどうかなぁ。
オンボードのビデオ機能使ってるユーザーは多数居る事を前提に
作らなきゃあかんやろ。
BF2みたいなもんじゃ無い限り。
絡み屋が現れた
ノートだと増設できない場合がほとんどだからな。
SiS651はデスクトップ用
696 :
674 :2005/09/07(水) 22:59:56 ID:V/FDZxxO
>>691 > ユーザーならともかく開発者としてそれはどうかなぁ。
>
> オンボードのビデオ機能使ってるユーザーは多数居る事を前提に
> 作らなきゃあかんやろ。
人それぞれだろ。俺は「〜しようぜ」とは言ってるが
お前のように「〜でなきゃあかん」とまでは言わねーし。
くだんねー
>>691 だが断る。
俺の魂を表現するのに貴殿のハードが力不足だと言うのなら
忘れよう、貴方の事を、そしてそれぞれの明日へ。
698 :
638 :2005/09/07(水) 23:43:11 ID:ovMMXFpN
>>689 買いたいのですが、一体型なもんで増設が…。
>>691 それはターゲットをどこに絞るかの問題ですね。
必ずしもオンボード向けに作る必要は無いかと。
そういえば、エラーの出るプログラムを友人に試してもらったところ、
全く同じエラーが出たようです。d3dx81ab.dllとBCCの組み合わせが悪いのかも。
>>698 まだやってたのか。
君の使ってるDirectXSDKのバージョンと
落としたDirectX libraries for C++Builderの
ファイル名を書いてみそくそ。
700 :
638 :2005/09/08(木) 21:05:11 ID:KZkhAvKY
>>700 DirectX libraries for C++BuilderのAugust2005にはd3dx81ab.dllは含まれてないし
Direct3D9を使うならこのDLLは必要ない。
もし君がDirect3D8じゃなくてDirect3D9を使っているなら
d3dx9.hをインクルードして、d3dx9.libをリンクしているか確かめるべき。
販売してるゲームソフトにどんな種類の言語等が使われてるか調べれる方法はありますか? スレ違いかも知れないですがお願いします。
>>702 PCゲームなら無いこともないが、
全体を見るとほぼ例外なくCとC++
もちろん例外はあるが、一番開発環境、資料がそろっている
C系列の言語がほとんである。
ネットゲームとかになると、クライアントとサーバ側で別の言語使ってたり
いろいろある。
そのゲームを作った会社のホムペに行って 採用情報のプログラマのところを見るのが一番早いかもね
まぁ、インポートしてる関数とか調べれば大抵は分かるけどな。
707 :
名前は開発中のものです。 :2005/09/09(金) 20:08:02 ID:pCDSNd71
javaなんて使ってるところありますかね?
>>707 スクリプトの原型にjavaを使ってるところならあったよ。
はじめましてこんにちは。 C言語(C++)でのゲームプログラミングの衝突判定のことで質問をさせていただきます 四角形同士の衝突判定の場合 class OBJ{ public: int x; int y; }; OBJ a,b; --------------------------------- if( a.x+52 > b.x && a.x < b.x+52 && a.y+52 > b.y && a.y < by+52) { } で、出来ますが、円を使った衝突判定はどのようにすればいいのでしょうか。 ググってもなかなか初心者に分かりやすいサイトがないので質問しました。 最終的にはショートケーキのような△の底辺が楕円の衝突判定を作りたいです。 ちなみに全て2Dの衝突判定です。 よろしくお願いいたします。
半径3離れた位置との衝突判定は、点Aと点Bの距離が3以下なら衝突だ。
711 :
638 :2005/09/09(金) 22:56:05 ID:zQFNgp1R
>701 d3dx9.hをインクルードして、d3dx9.libをリンクしているか確かめる方法 が良く分かりません。参考になるサイトがあれば教えてください。
>>711 d3dx9.libをリネームしてコンパイルできればリンクしてないんだろ。
713 :
638 :2005/09/09(金) 23:35:11 ID:zQFNgp1R
>>701 ,711
リネームして試してみたところ、コンパイルできました。
そこで、BccDeveloperのリンクの設定を確認したところ、
DirectX8関連のファイルがリンクされていたので、
それを削除したところ、実行できました。
DirectX9より、DirectX8が優先されてしまっていたようです。
どうもありがとうございました。
715 :
名前は開発中のものです。 :2005/09/10(土) 06:52:24 ID:22k1rf7p
「HSPで、RPGを作る」 よく聞くが、実際にHSPで作られたRPGなんて見たことないんだが
>中学数学レベルの話だろ 見え張り乙(ププ
>>716 実際そうだけど。
二次関数しか使わないし。
>>715 一度、シェアウェアの体験版を遊んだことはあるぞ。
一回きりだが。
719 :
名無しさん@そうだ選挙に行こう :2005/09/10(土) 18:38:02 ID:Ry/8AE+d
Visual C++ で無料配布のやつと市販で売っているやつでは なにか違いがあるんですか?
>>715 一応あるよ、HSP製RPG
HSP製って書いてないことが多いけどね
ていうかツクール製が大杉な訳だが…
モンキーボールみたいなゲームを作ろうとしてるのですが
床や壁の判定がうまいこといきません
今は、床の法線からボールの判定する点を決めて前フレーム
から今回のフレームでレイを作りそれと、面を判定(自分の居る面
と隣接3面)してるのですが、境目で失敗します。
球全体と面の判定ができ、そこから球に対する角度やベクトルなど
知る方法があれば教えていただきたいのですが、お願いします。
[現状]
ttp://gamdev.org/up/img/3210.zip
よくPCゲームや同人ゲームなどが発売された後、バグなどを修正するための アップデートパッチが配布されますが、このパッチというのはどのような仕組みなのでしょうか? 「アップデートパッチ プログラミング」などで検索してみましたがコレといった情報がみつかりませんでしたorz
俺も気になる。が、検索すらしてなかった。 バージョンアップの度にフルでうpしてるDQN作者です。
1.パッチ自体が実行ファイルの場合は、単純に差分を書き換えてるだけ。 2.ソフト自身が自動的にパッチを当てる場合は、シナリオとかの外部ファイルは1.と同じだろうけども パッチを自動的に当てるソフト自身を対象にする方法はシラナイ 無理やり頑張れば実行中のファイルでも書きかえれるんだろうか。。
DLL 動的ロード・アンロード
あれ?あれは古い実行ファイルに 新しい実行ファイルを上書きしてるんちゃうん? ずっとそう思ってた・・。
バイナリにdiffかけても効率悪そうだよな 差分なんか取るよりは上書きした方が確実じゃない? パックファイルなら中身を差し替えるプログラムを作れば良さそうだけども
ナロー時代はいちいちオフセット指定して書き換えてたけど、今は上書きしてる
>>723 更新されたファイルをそのまま丸ごと配布するだけ。
ただし、データ類は1つのファイルにパックされているのが普通なので、
その場合はファイルを差し替えてパックし直す。
また、いま実行しているプログラム自身を更新することはできないから、
ゲーム本体とUpdaterはプログラムを分ける必要がある。
731 :
723 :2005/09/11(日) 13:21:12 ID:Ia/QtAPe
>>725 1の差分を書き換える方法が知りたいのですが、プログラミングを解説してる
Webページや書籍はないでしょうか?
>>730 ネットゲームなんかはそんな感じですね
パッチに関しての技術色々ありそうなのになかなか見つからないのはなんでだろorz
>>731 ファイルを比較して違うところを記録するだけ
日本語化パッチ使ったことは無いのか
MMOなどのネットゲーでユーザーがデータを改ざん出来ないようにする場合 1:キャラデータを鯖に保存する(ディアブロ以降は当然みたいですが) 2:ダメージなどの処理も鯖でする(動作だけユーザーから受け取って演算結果を返す?) 以外になんかありますか? 1,2に間違いなどがあったら指摘もお願いします。
通信の暗号化は前提に入ってる?
暗号の知識がほとんど無いので できれば暗号ありとなしの2パターンで教えていただけると嬉しいです。
キャラ名をクライアントに保存しておいて チャットメッセージとくっつけて送ってはいけない クライアントから送る仕様だとなりすましされる
737 :
721 :2005/09/11(日) 19:02:23 ID:CkbyXOjF
>>722 立ち読みしてきました。レイと球の判定方法を知りましたが・・・
それを踏まえても、面と面のつなぎ目に対する判定が思い浮かばない orz
○
へ
こんなん、どう判定するの?ボスケテ...
>>723 EXEのみ(画像など別ファイル)なら、EXE単体まるまる
上書きアップデートで良いでしょうが
込みで、10M以上とかないなると落とす方も大変なんだよねぇ
>>737 具体的にどういう判定処理の仕方をしているか分からないので、的外れかもしれないですが、
山になっているところでは、辺との判定をするというのはいかがでしょうか。
>>733 チートを防ぐには
「全ての処理をサーバ側でやる」
これ以外にない。
ただ、当然のようにサーバとクアイアントは1対多の関係になるので
なるべくクライアントに仕事をさせた方が効率はいい。
HSPとメタセコイアでGTA+バイオハザードのようなゲームを作ろうと思っているのですが この二つだけで製作することは可能すか?
HSPで作られた他のゲームを見て参考にしてみたら? 10個かそこら見たら現実が分かるかと。 まじめな話、本格的なゲームを作ろうと思ったらC系統しかない。 ついでに言えばCなんて使えて当たり前。まずは、その土俵に立つことから始めないと。 メタセコは良い。あれは凄いモデリングツールです
しかしHSPユーザにいきなりCを薦めても、使いこなせるか疑問ですよ。 740は恐らくゲームも作ったことがないと思うので、まずは簡単な2DゲームをHSPで 作ることから初めてはどうでしょう?
無印で作ってLEでファイルにするとか まあ、物凄く便利なわけです
744 :
721 :2005/09/12(月) 00:06:19 ID:itlPeYtq
>>738 あーそうか、辺をレイとして考えて球との判定かー
そこで2点当たりがあれば、中間点が一番深い筈だから・・・・
ちと組み込んで見ます。
いやー思考という名のサルガッソーに入り込んじゃうと
視野が狭ばまちゃってイカンなぁ
また、ハマリ込んだらよろしくお願いしますですハイ
>>742 そういや今は、C++の長いソースを見てもそこそこ簡単に解析する
事はできるけれども、昔の自分にそこまで出来るか?と聞かれると
「絶対無理!」って答えるよな。
左手座標系の空間に点在するそれぞれのオブジェクトを、Yaw、Pitch、Rollで回転させる場合、 すべてが0度だった場合、どっちを向かせれば良いかで悩んでいます。 通常はこっちを向かせるという、常識みたいなものはありますか? Direct3Dを使用しています。
Yaw Pitch Rollで回転させるので全てが0度だったら デフォルトのメッシュを表示、ってことじゃないの?
すみません、自己解決しました。 飛行機の動作を参考にしたら、 x=0 y=0 z=1の向きを基準にするのがよいみたいですね。
なんか凄いIDだな
俺とお前でMMORPG
>>741-
>>743 メタセコイアはok、そしてHSPは駄目って事ですね。
とりあえず
>>742 さんの言うとおり、単純な2Dのシューティングゲームでも作って
その後にCやらDirentXやら勉強したいと思います。
サンクスでした。
HSPで構造体が使えたらなぁ・・・
753 :
名前は開発中のものです。 :2005/09/12(月) 16:46:29 ID:Qc12nKfy
HSPでOOPが出来たらなぁ・・・
定期更新ゲームを作りたいと思いCGIに目をつけたのですが、自分が作ろうとしている規模のゲームができるか心配です どうも作られているCGIゲームを見てみると、 使っている言語の問題なのか、その負荷の問題なのか、 ゲームのデータを少なく抑えようとしている傾向があるようなんです できればその現存している規模の2、3倍以上の大きめのゲームを作りたいと思っているのですが、 プログラム言語はperl(勉強中なので..)を使い、今ある規模の2,3倍以上の規模で、稼動させれるゲームは作れるのでしょうか? できない場合はどういった言語で、どういった環境があればできそうであるか是非教えていただけませんか
>>756 正直に言うが、目算が出来ないなら作る事そのものが不可能。
先ずは何でも良いからやってみな、続けられたら目算ができるようになる。
数日前も2Dゲームも作ったことのないHSPユーザが、 メタセコでGTA+バイオハザードのようなゲームを作りたいと吹いてたが 756はそれ以上だな・・・。 なんで初心者が、いきなり高度なミッションを設定したがるのかねぇ。 ゆとり教育の影響?
現在アクションゲームを作っているのですが ちょっと困っています。 基本的にゼルダのような環境(連続動作環境,タイル環境じゃないやつ) で主人公を動かし、剣を振って敵を倒すゲームなのですが、 武器を交換した時、主人公のグラフィックも変わるじゃないですか。 あれをやりたいのですが、 武器オブジェクトに主人公のグラフィックを持たせてしまっていいのでしょうか? グラフィックを保持・変更するのに、何かいい方法はありませんか? 後、アクションゲームでソース付きのやつがあれば 2Dでも3Dでも構いませんので、教えて下さい。 一応、有名ライブラリや、ゲームの公開されたソースは 読んでいるつもりなのですが、リーディング量が全然足りません。 どなたか、よろしくお願いします。
760 :
759 :2005/09/13(火) 21:05:57 ID:UaXsdDp9
書き忘れました。 今作っているゲームは2Dです。 あと、ソース付きゲームはvc6でコンパイルできると嬉しいです。
>>759 >武器オブジェクトに主人公のグラフィックを持たせてしまっていいのでしょうか?
>グラフィックを保持・変更するのに、何かいい方法はありませんか?
普通は逆で、主人公のオブジェクトに武器の参照を持つ。
また、ググルで探せば、たくさんある、足りないのは探す努力。
>>758 でも、作れるか否かを人に聞くのは愚の骨頂だと思うけど
高度なものを作りたいと思う気持ちは評価してもいいと思うよ
763 :
759 :2005/09/13(火) 21:48:33 ID:UaXsdDp9
>>759 その場合、武器を振っている主人公のグラフィックは
どのオブジェクトが持つのでしょうか?
764 :
759 :2005/09/13(火) 21:50:39 ID:UaXsdDp9
>>759 作り方はいろいろある。
よく読めば分かるように、実体を持つのではなく参照だ。
グラヒックのリソース管理は一般的に別にしているが・・・・
よく見かける簡単なゲームなら、ごちゃごちゃだったりする。
あ、追加。主人公のグラフィックも参照な。
768 :
759 :2005/09/13(火) 22:33:15 ID:UaXsdDp9
>>765 実体と参照の違いは分かります。
確かに、リソース管理を考えた場合は参照にした方がいいですね。
質問時にはそのようなことを考えていなかったので、
次からは参照にします。
>> よく見かける簡単なゲームなら、ごちゃごちゃだったりする。
そのごちゃごちゃの具体的な内容が知りたいのです。
これはリソース管理の話ではなく、参照の話ですよね?
>>759 リソース管理をしていないとか、主人公にいろいろ持たせているとか。
いわゆる、主人公のオブジェクトとグラフィックの資源を別々に管理していないや、
管理と言える物が無い、などなど。
一般的に、資源やオブジェクトをきれいに管理していないと、拡張が非常に困難だったり。
ifやswitch文の嵐になりやすい。
これ以外にも、タイムスケジュールやイベントの管理やいろいろある。
>>768 言語によって違うが、参照にも色々有る。
もし充分に理解しているんなら、
>>759 の質問をするのが不思議。
>>759 まあ普通は主人公に持たせるんじゃねーかなー。俺ならこんな感じにするか。
主人公は剣、槍、弓、などを持った場合のグラフィックを保持。
武器情報は剣、槍、弓、などの属性情報を保持。
主人公は武器情報への参照を持つ。
描画するときは、主人公の武器情報の属性を見て、対応するグラフィックを表示。
こんなもんじゃね? でもオブジェクト指向的にはちょっとアレかもね。
主人公は主人公、武器は武器、で表示できるなら、それぞれにグラフィックを持たせる。
でもそれは759の仕様には合わない気が。
>>756 あー、今Perlで戦略CGIゲーム作っているけど、確かにデータは抑え気味になるなー。
何か動かすたびにデータファイル読みこまにゃならんから、サーバへの負担考えて、
データは小さく・ゲームシステムはなるべくシンプルにしてるよ。
756タンの言う「今ある規模の2〜3倍」ってのがどのくらいのものか判らないけど、
共用サーバ借りて稼働するとしたら、小さくシンプルにするのが無難だと思う。
俺も色々と詰め込みたかったけど、ルールもデータもシンプルにした。
それでもプレイヤー達は覚えるルールが多くて戸惑っちゃったみたいだったよ。
もしも大規模にするとしたら、自分でサーバ建てるか専用サーバ借りるかした方がいいかも。
Perlを勉強中なら、まずは自分のPCにAN-HTTPDとPerlをインストールしてみて、思ったものを
作ってみるのはどかな?
まとまり無くてスマン。
773 :
759 :2005/09/14(水) 00:06:59 ID:K2Nul5Ig
>>767 早速vc6でコンパイルしてみました。
この程度の汚さ(失礼?)なら、自信ないですが読めると思います。
ありがとうございました。
>>770 参照も実体も、使う側から見ればアクセス手段が多少違うだけで、
その先にあるものは同じですから、
ここでは、その違いにはあまりこだわらなくてもいいと思いますよ。
ここでの参照はC++における、ポインタ(参照)くらいの意味合いで。
>>771 そういうことです。
何だかな〜って感じだったんで、聞いてみたんですが、
やっぱりそんな風になりますよね。
ほんと、こんな事で詰まってたらゲームなんか完成するはず無いのに。
>>759 俺はハンドル(中味はただのID)持たしてるなぁ。
リソース管理クラスにそのIDで問い合わせて
画像データ(スプライト定義クラス)へのポインタを取得
Dは今後、開発言語としてCやC++の様にメジャーな地位を築く事が出来ると思いますか。 またCやC++を扱える以外にもDを習得する事は就職に対して得になると思いますか。
>>775 板違いの話題
PCの使い方に関する質問、業界・進学・就職・人生相談の話題、市販ゲームの質問や感想、違法性を含む話題
参照:ゲ製作板ローカルルールより
778 :
名前は開発中のものです。 :2005/09/14(水) 09:27:49 ID:GtF+rqoY
WinAPIってCとは全くの別言語ですよね? それなのになぜstdio.hをインクルードして、 C言語の関数を使ったりできるんですか?
言語じゃない。
>>779 言語じゃない??
WinAPIっていうのはどんな位置付けのものなんですか?
ちょっと自分で調べてきます
>>772 分かりやすい説目有難うございます!
同じく戦略CGIゲームを作ろうとしているので大変参考になり安心も出来ました!
まだゲームを作るレベルには到達していないので、
さらに勉強して試行錯誤しながら作っていくことにします^^
>>778 HSP世代は「関数名」が違っていると別言語という認識があるんだな…
785 :
ド素人 :2005/09/14(水) 21:28:40 ID:3eNIi+Vp
3Dの勉強をしてるのですが 宇治社中というサイトがかなり有力情報が公開されてた様なのですが 今では閉じてしまってるようで・・・アーカイブみても肝心なTipsは残ってない状態 サイト丸ごと保存されてる方など居ないでしょうか? もしくは、こっちのサイトもかなり有力情報ありっての知りませんか?
アーカイブにあったと思うが。(もちろんファイルとかは無いけど)
宇治社中の人は、2001年ごろにCMagazineで3Dに関する連載をしていたので、 CMagazineのCDを買えば、似たようなのが読めるんじゃないの?
今じゃどこでも読めるだろ
まったくの素人なんですがどうも要領を得ないです。 参考書とかソフトとかでお勧めなものはないでしょうか?
>>790 のリンク先の本を読むにあたって
必要な知識は高校レベルの数学と物理。
要領を得ない原因は「素人だから」ではなく
ただ単に「バカだから」。よって心配するな。買え。
793 :
名前は開発中のものです。 :2005/09/15(木) 03:50:12 ID:2OHaxRDT
質問です。 僕は今までゲームに使われる絵の透明にする部分は黒にしてきました。 しかし、多くのプログラマが透明にする色は黄緑のような色にしています。 この理由は一番使われにくい色であるからでしょうか?
>793 >使われにくい色 答えは…YES! 他にもマゼンダにしている場合もある。
まあ最近は画像そのものを32bitにして、アルファ値を使うことも多くなったみたいだけど・・・
796 :
793 :2005/09/15(木) 08:48:31 ID:VcpCNh66
ご回答ありがとうございました。
バイオハザードのようなホラーゲームを作ろうと思っているのですが 具体的に製作の流れはどのようになりますか? 言語はVC++等を使うつもりです。
要件定義→設計→実装→テスト→リリース
具体的にお願いできませんか?具体的に。
>>798 以上に具体的にはならんだろw
まあゲームの場合は設計からテストまでを
行ったり来たり(iterative design)するがな
>>797 まずはこんな所かな。
ランダム生成された(特に何も無くてよい)マップでの主人公の移動
↓
マップを編集出来るようにする(マップエディタ)
↓
敵の表示
↓
敵の行動
バイオハザードみたいって3D?
>>797 とりあえずDirectXを使えるようになりなさい。…もしかしてまだC言語は使えないとか。
君がどのレベルで迷走しているのか分からない。
テスト
すみません、ようやく書き込めるようになりました。
正直言うと言語は何も使えません。
今からC言語を勉強していくつもりでそれで流れをある程度抑えておきたいと思ったのです。
>>803 3Dです。
>>804 やはりDirectXは必須ですか。
>>802 >>800 ありがとうございます。
やっぱりマップ上で主人公を動かす事が先ですね。
>>806 C言語で3Dゲームを作るというのは凄く難しいことなんだ。
熟練のゲームプログラマーでさえもゲームを形にするのに最低でも半年はかかる。
今君が言っていることは小学生がロケットを作ると言っているのと同レベルだ。
君にプログラム経験が無いというのなら、まずもっと簡単な言語で、簡単なゲームを作ってみることを勧める。
まずはHSPとかでブロック崩しでも作ってみるのがいいだろう。開発環境も無料だし、ネット上に資料も多い。
>>807 HSPは使ってみたのですがオレの考えているゲームは作れなさそうだったので
諦めてCを勉強しようと思ったわけなのですがやはり基本は大事ってことですね。
>>807 さんの書き込みを見て、ゲ製板っていい人が本当に多いと改めて思いました。
他の場所だったら叩かれたり放置されててもおかしくない内容なのに・・・。
自分は2D専門で3D技術の事ははっきりと言えませんが、
>>808 さんが考えている以上に習得するのは難しいと思います。
まずは2D。もしくは、コンソールでのゲーム製作をやってみてはいかがでしょうか?
810 :
名前は開発中のものです。 :2005/09/15(木) 15:31:57 ID:MYv9Siud
C++とAPIだけでパズルゲームを作ってるのですがキー入力が上手くいきません。 シューティング同様にGetAsyncKeyStateでキー入力をやっているのですが、 1マスだけ進みたい時などに反応しなかったり2マス以上進んでしまったりします。 何か解決策はありませんか?
>>809 知り合いに基本は似たようなものだからどちらからでもはじめて良いといわれたのですが
やはり基本は2D!ということなのでしょうか?
>>810 キーの取りこぼしを無くしたいなら、GetAsyncKeyStateの最下位ビットも利用する。
>>811 基本というより単に2Dのほうが簡単だから
ちなみにどこぞの専門学校生ならいざ知らず、C言語だけじゃゲームプログラミングはかなり厳しいぞ
Win32APIとDirectXがまだ扱えないなら
大人しくHSPでプログラミングに慣れるところから始めることをお勧めする
>>813 やはりDirectXやらWin32APIの力を借りなければいけないのですね。
とりあえずコンパイラ買ってC言語を勉強してみます。
HSPはもうやりたくないですorz
>>814 ちなみにやりたくない理由を教えてくれ。
>>814 市販コンパイラは高い
最初はbccかgcc(MinGW | Cygwin)使っとけ
818 :
名前は開発中のものです。 :2005/09/15(木) 19:09:22 ID:ZugL+zQL
819 :
810 :2005/09/15(木) 19:10:48 ID:MYv9Siud
>>812 いきなり2マス以上進んでしまったりする問題の解決方法は無いでしょうか?
>>819 それはたんにバグってるだけじゃないのか?w
>>814 分かってるかも知れないが言っておくと、一応HSPでもプラグインを使えばDirectXを使える。
確かにバイオハザードみたいなゲームを作るのは言語仕様上難しいかも知れないけどね。
コンパイラは君が学生なら4000円程度で買えるVisualStudio.net the Spoke Premiumを薦める。
使用開始の手続きが面倒だが、値段以上の活躍をしてくれる。
C/C++とDirectXによる3Dゲーム制作の道は長く、険しい、本当に。君がどの程度のレベルなのかは分からないが、
これからC言語を学ぶとなるとバイオハザードのようなゲームを作るには制作"開始"までに最低1年以上はかかると
覚悟しておいた方がいい。もちろん、やる気しだいだが。
独学で一年でそこまで行けるやつは優秀な方かもね。 私は二年ほどやってもまだ2D止まりだし orz
>>819 実装がどうなっているのか分からないと何ともいえないが、例えば
キー押す
↓
キー読んで一つ進む
↓
キー読んで一つ進む
↓
キー離す
こういう状態なのなら、連続して進まない工夫をすればいい。
>>823 そんなもんだろう。おれもHSPで2Dゲームを3年間作って、
言語をC++に変えて3Dの勉強とライブラリ制作に1年掛けた後、やっと3Dゲーム制作に移れた。
4年もかかったよ…。まあ2Dゲームの制作経験は3Dに移っても無駄にはならないさ。
>>815-825 大変なのは分かっていましたがそんなに時間を要するものなのですか。
自分の考えが甘かったな、と反省しています。
HSPはワガママかもしれませんが将来役に立ちそうに無いのでやりたくないです。
VisualStudio.net the Spoke Premiumはまだ中学生なので購入は難しいです。
C++とCの違いが分からなかったりただのモデルが何故あのように動いてるのかなど
分からないところだらけで先ず何から勉強すればよいのか全く分からないので
「とりあえずC言語だ」と適当に決めていたのですが「オブジェクト指向の言語」を
勉強すれば良いということですね。
わたくし1年たってもコンソールやってます まだまだやります
>>826 お前はまず良い高校に入って、良い大学に入る。話はそれからだ。
>>828 やっぱり学校をサボって一日中プログラムの勉強しているってのは
良くない事なのでしょうか?今日やってしまったのですが。
830 :
823 :2005/09/15(木) 21:22:00 ID:wJT6J8Go
>>825 >まあ2Dゲームの制作経験は3Dに移っても無駄にはならないさ。
うう、その言葉を胸にがんばるよー ノω`)・゚・。。
>>827 ちゃきちゃきWindowsProgramに進むのもいいと思いますよん。
好きな座標に絵が出せると世界がぐっと広がるから。
831 :
名前は開発中のものです。 :2005/09/15(木) 21:31:42 ID:3Xzdttrk
>>829 学生は、勉強が本分
最低でも英国数が出来ないと、ろくな人間にならないよ
>>831 英国数・・・オレが一番必要としている科目でもあり、一番苦手な科目でもありますorz
とりあえず学校はちゃんと行きます。その代わりクラブ止めます。
友達との別れが辛いのですが今の内から勉強していきます。
話変わりますが先程からgcc(MinGW | Cygwin)を探しているのですが
なかなか引っかからない・・・海外のソフトウェアですか?
>>829 学校をサボってかー!
しかしそこまでやってたら、CとC++とHSPの特性の違いくらい分かるだろ。
いやしかし・・・プログラムの知識なんて数年で古くなるわけだし、
将来のことを本当に見据えているのなら、今はプログラムよりも受験が優先じゃないかなぁ。
日本で有名な3D界隈の人々は、東大や京大の人だぞ。
>>833 学校をサボってというと格好良いように聞こえますがただたんにC言語の解説サイトなどを
さらさらーっと見て行ってるだけなのであまり役に立っていないかもしれないです。
つーかプログラムの知識って数年という短い期間で古くなってしまうものなのですか・・・。
しかも有名になろうとすれば東大やら京大ですか・・・。嫌になってきたorz
>>826 君はまだ中学生か。ならすぐにプログラミング能力が必要という訳ではないんだろ?
俺はプログラムを始めたのは高校に入ってからだが、過去の経験から言わせてもらうと、
やっぱりHSPをやるべきだ。最後まで使うんじゃない。あくまで入門用としてだ。
プログラミング言語というものはいろいろあるが、実際の書き方はどれも見たようなものだ。
一つの言語を自在に使えれば、他言語の習得は容易い。
俺もHSPを3年もやっていたからC++の文法の勉強には1週間もかからなかった。(DirectXには…)
オブジェクト指向の言語、C++やJavaはなかなか成果を見られない。確実にやる気が失せるぞ。
あと、学校はきちんと行っておけ本当に。
でないとプログラミング能力ばかり突出した3流大学の学生になるぞ。誰のこととは言わんが。orz
>>835 先輩の貴重な意見ありがとうございます。学校はやっぱり大事・・・ですか。
すぐにゲームを作れるようになりたい!とばかり思っていたので基本なんて省こうと思っていたのですが
基本が出来てないと何も出来ないんですよね。昔剣道やってた時に先生に何度も言われたのに忘れるなよ、オレ。
とりあえずHSPでプログラミングとはどういうものなのか?という事をしっかりとおさえたいと思います。
それにしてもクラブ止めるのは辛い。涙が出てくる。
俺は中卒でゲーム会社入っちゃったから言えるような立場ではないが 中学は普通に勉強して高校3年間でがんばったほうがよかったかなと思ってる
>HSPをやるべきだ え??? C++使いたいなら最初からC++使ったほうが良いよ。 学生で金がなくてもフリーのC++環境はいっぱいある。 てゆかマになりたいなら高校からはじめても十分間に合う。 クラブやめんな。
>>837 中学は普通に勉強・・・ですか。
>>838 すみません。gccかbcc、どちらを使おうか迷ったのですがgccの方が高機能かな?
と思い、こちらにしてみました。
>>839 すみません、マって何ですか?
ちょっと近くにPCの塾があるのでそこでゲームプログラミングは扱っているかどうか
聞いてきます。「市民のパソコン講座」だから扱ってないかなぁ・・・・。
>>839 あのAPIとDirectXの壁を中学生で越えるのは難しいと思うが……。
俺はいまだにC/C++からゲームプログラムの道に入ったという人に会ったことがない。
たぶんあなたのようなできる人は希少だと思う。
>>840 「マ」ってのはプログラマの「マ」
>「市民のパソコン講座」だから扱ってないかなぁ・・・・。
ないと思う。あったらスゴイ。
今からC++はじめるならVCToolkitが情報多くて良いんじゃない?
>842
>俺はいまだにC/C++からゲームプログラムの道に入ったという人に会ったことがない。
俺の周りにはいっぱいいるぞ。
>>836 国語、英語、C言語…。もっと幅広く、手話やボディランゲージなどなども。
プログラムってのは、やってもらいたいことを伝える相手が機械ってだけのただの言語。
相手が機械ゆえに、数値に意味付けしていく必要があるが、所詮算数レベル。
融通が利かないので、事細かく厳密に指示してやらなければいけないけれど。
プログラムに数学が必要とか言うが、野球ゲームを作るのに野球の知識が要るのと同じ程度のこと。
逆に言うと、数学が必要なプログラムを組まない限り要らない。
3Dゲームなら、ベクトルなど多少の数学もいるけど、独学でも出来ると思う。
というか、今からプログラムの勉強開始するなら、必要な時には既に授業で習ってる頃かも。
英語を話せるだけじゃ仕事にならないのと同じで、プログラムは目的じゃなくてあくまで手段。
まあ、学校サボったり、クラブ止めたりしてまでやるもんじゃない。
他の教科と同じぐらいの勉強時間で十分じゃね?
なんか書かなくてもいいような、余計なこともいろいろ書いてしまったかもしれんなー。まあいいや。
>>843 そうなのか。じゃあ俺と俺の友人達には無理だったというだけの話か。
もしかして世代の違いとかな…。俺等の世代にはいろいろ逃げ道があったからなあ。
それとも純粋にあなたの周りが凄いのか。
>>841 なるほど。便利なものもあるのですね。
>>843 プログラマですか。
今みてきたのですが閉まってましたorz
>>844 考え方を変えるだけでこんなに簡単に感じるのですね。
クラブ止めるのは止めました。学校もまじめに行ってそういう関係の高校に行きたいと思います。
マジレス本当に感謝です。
>>845 ゲームプログラマといってもプログラミング能力だけあれば良いってもんじゃないからねえ
運が悪かったんじゃないの
と、これ以上は板違いだな
>>847 やべ、誤解が生まれたようだから訂正しておく。俺と俺の知り合いは今のところほぼ全員大学生だから
>>842 で書いたゲームプログラムの道っていうのはプロじゃなくてアマチュアね。
>>843 はあ?
俺も大学でゲーム作ってるサークルに入ってるけど、
C言語でゲーム製作始めた奴なんていないぞ・・・
てかWindowsプログラムを素人がいきなりC言語でやるのは普通に無理だろ
自分の周りにいないからって、それが無理とは限らない。 そういう奴は自分が常識だと思ってるのか?
>>849 ポイントだけレスするが。
>Windowsプログラムを素人がいきなりC言語でやるのは普通に無理だろ
Cでやるのはつらいだろうな。
俺もCで全部やれって言われたら嫌だし。
俺はC++の話をしてるんだが。
つまり
>>851 とお仲間たくさんはプログラムの素人だったときからいきなり
C++でWindowsプログラミングを始めたわけか、すごいな
難易度は多少高めかも知れないが、その分アフォみたいに資料や情報が大量にある。 差し引き0じゃねーの。
>>852 何か怒ってるようだが・・・
無理!出来ない!
って決め付けてるのは最初の理想が高すぎるんじゃないか?
いきなりバイオやMMORPGみたいなもん作ろうとしてもそりゃ無理だ。
俺はいま勉強してる最中だがコンソールしか使えなかったころを考えるといきなりCは並の努力じゃ無理だと思うが・・・ 才能を感じるな
HSPで一本ぐらい作ってみろよ。 それも出来ないようじゃプログラムなんて到底無理だな。 それにスクリプト言語とはいえ一応プログラムだしな。 プログラムの根底にある考え方なんかは変わらない。 むしろいきなりCやC++に手を出して痛い目見るよりもいいかもしれないぞ。 それとCが出来るに越したことはないけど Cしか出来ませんっていうプログラマじゃ役に立たない。 外国語と同じで言語は2つ使えるとそれ以降は わりかし簡単に覚えられる。 だからトータルで見たらHSPから入ってもそれほど損はしないはずだ。 ゲーム開発のスタンダードがずっとCだという保証もないしね。 (当分変わらないとは思うが)
>>855 才能より必要なのは根気。
>>856 でもHSPについて触れられてるけど、
>>855 が
HSPあがりでそこまでC++をむつかしいって言うのは
単にHSPも使えてないからじゃないか?
俺は最初からC++やったほうが良いと思うけど、このスレだと
HSPを薦める人も多いようだ。
でもね、一つの言語を理解せずに他言語にうつっても
得るもんなんかないし、何も出来ないよ。
初めて触れる言語はBASICが良い。それもN88BASIC。 もしくはポケコンのとか(今時誰も知らんか) 言語仕様の良し悪しなんかは、論理的思考能力が付いてこれば 自分で自ずと判断しより良い物に切り替えていけるようになる。 そんなことよりも、OUTPUT能力を極限まで限定した環境の方が良い。 初心者は結果(絵の出し方とか)ばかりを重視して、 呪文を見るようにコピペしてその本質を理解しようとしなくなっちゃう。 だから最初は”線を引く”とか”点を打つ”みたいにOUTPUTを限定的かつ単純な物にして、 ますプログラムってのが何かを理解させるのが重要。 おっさん臭い事を言ってみた。
折角2chの良心を見たと思ったのに 結局この展開かw
860 :
786 :2005/09/16(金) 01:04:05 ID:dFtsHH1z
Basic なんてやっても時間のムダ。 若いうちから素直に OOP やっとくのが良い。 初めはわからなくてもそのうち空気みたいになるから。 あと3Dエンジンが作りたいのかホラーゲームが作りたいのかハッキリさせた方がいいかも。 PCゲーム(FPS系)なんかはエンジン使って好きにいじれるからすごく勉強になると思う。 少くともゲームがどうやって出来てるのか、あるいはどれくらいの労力が かかってるのかだとかが判るようになる。 米国のゲーム少年にはこれが教材みたいなものなんだけど、 日本にはこれに相当するものが無いのが残念でならない。
数学と物理しっかり勉強しておく事をお勧めする。 ほんっとに「やっておけばよかった」と後悔するから。
英語もね♪
>>858 参考にならんと思う俺はX-BASICで入門した。
Cライクな関数やコンパイル、リンクの概念があって、Cへの移行は楽だった。
今ならC,C++とサクサク進むのがお勧め。
後、アセンブラはいらんけど、コンパイラが何やってるかはある程度知っといた方がイメージし易いかと。
最初の言語は何やったっていいんだよ。 まずはプログラミング的な思考方法を身につけるのが先。 職業としてのプログラマを目指すならC++がいいんだろうけどな。 ゲームを形にしたいだけならHSPでも何でもいい。
いろいろな言語をWEBで検索して、自分でわかりやすかったのを選べばいいんじゃないの? それでは自分の作りたいものが実現できない場合、できないと判断できるころには、 他の言語を支障なく始められる、自分の作りたいものが実現できる言語の判断ができるようになってると思う。 最初から完璧なもので初めてレールに乗らないといけないみたいな、 いかにも時代を反映してるような気がして・・親父臭くてスマソ。 なにも一生に言語をひとつしか選べ無い訳じゃあるまいし・・・
break;
868 :
昨日の厨 :2005/09/16(金) 10:33:31 ID:M5cU0riM
ちょっとどれにレスしたら良いのか分からないのであえてアンカーはつけてません。 とりあえず今は2年なので中学生の間はHSPでプログラムとはどういうものか? という事を勉強したいと思います。そして高校でそっち系の学校を受験して 本格的にゲームプログラミングの勉強を始めたいと思います。 ありがとうございました。
学校でプログラムの勉強が出来ると思うな。全く役に立たない。独学だな。
>>869 本当ですか?
それじゃあ独学しかないかなぁ。
3Dゲームを作るのに、中学・高校で習う数学の知識も必要だが その20倍くらい学校で習わない数学の知識が必要。
>>871 高度な数学の知識が必要だとかあまり必要ないだとか色々な意見があるのですが
結局はかなりの知識がいるのですね・・・。数学苦手なので怖いです。
>>871 ハッタリ脅しuzeeeeeeeeeeeeeeeeeee
>>871 20倍っておまwwwそれwwwハッタリuzeeeee
作るのに必要な知識の目算が狂ってるなら
何も作らずに勉強の虫になるしかないだろ。
それは本末転倒というものだろ。
>>872 >数学苦手なので怖いです。
ネガティブ思考uzeeeeeeeeeeeeeeeeeee
作るのに必要な知識の目算が立たないなら
ある程度作り始めてから気付くしかないだろ。
それが普通。それが凡才というものだろ。
何もしない内から怖いだの苦手ですだの
泣き言はチラシの裏にでも書いてろ。
1行目〜2行目は消し忘れda
ゲームプログラムやってりゃ自然と数学にも興味出てくるから大丈夫だよ。
>>875 大丈夫ですか。
どちらにしろ数学が大事だと分かったのでコレから数学の修行は真面目に聞きます。
すみません。 修行 × 授業 ○
若さに嫉妬。 みんな熱いねぇ。
あっちっち。
最近の展開は、厨房に釣られたおやじたち。 (20才以上な。w
そこで独習Javaなわけですよ
あーあ。まだJAVAとか言ってるじゃばこがいるよ。 マ板だかム板に帰れ。
一番最初はハンドアセンブラってのは古すぎるかね?
昔のPC8001が手元にあるならそれでもいいんじゃない? モニタモードに簡単に入れたしね
昔はBASIC→ハンドアセンブルしか選択肢が無かったが、 今はHSPかJavaなんだろうなぁ…
なでしこ言語を忘れてしまっては困るなぁ
ひまわりの後継だっけ?
なでしこでネトゲは作れますか?
あーあ、そりゃ学生の理想論だな。現実は・・・(::)
言語なんてなんだって同じなんだよ。 関数型と手続き型比べてる訳じゃあるまいし。 いい加減うざいよ。
所詮言語云々なんて言ってるやつらは大したことないよ。 ごめwwww俺も含むwww
俺は元々C++しか使えなかったけどJava初めてやったときは 目からウロコだったな。 使えなくてもいいから標準パッケージのソースぐらいは 眺めてみるのが吉。
ゲーム作るのにJavaを使う必要はないけど、プログラムの勉強するのにJavaを使うのは良い事だと思う。 いきなり、C++とかやりだしたら挫折する可能性が高そうだし。
ゲーム作りたいんならツールから入るのが一番だと思うがなぁ。 俺の中坊時代はデザエモンだった。 その後 Clic&Play→C→C++→C# ときてる。 本格的にプログラミング始めたの大学入ってからだぞ。
最初は、できるだけ制限された環境から始めた方が覚えやすいね。 自由に何でもできるってことは、それだけ覚えないといけないことが多いわけで。
>>895 俺も一番最初はデザエモンだったわ!小学生の時だった。
そして中学の時にRPGツクール3で友達数人と作り合っては皆のをやってみたいな事をしたものだ。
俺はダンジョンキッドだったな
ダンジョンキッドかよっw (´・ω・)ナツカシス
加齢臭で溺れちまいそうだぜ。
901 :
名前は開発中のものです。 :2005/09/18(日) 12:14:31 ID:YaskzOsF
タスクシステムでゲーム作っててあることをしようと思って困ってます。 タスクにキャラと敵1のタスクが別々にあってキャラと敵のあたり判定をとりたい と思ったときはタスクのメンバ変数か何かにこのタスクはキャラのタスクですよ みたいなintの値を持たせて当たり判定のときにTOPのタスクから検索してそのint 値を見てキャラタスクだとわかった時にそのタスクの値をひっぱってきてあたり判定 をとるのでしょうか?この方法だとキャラの数とかを考えるとかなりのループが発生 して遅くなりそうなのですが他に何か方法ありましたら教えていただけませんでしょうか?
>>901 英語ってこんな感じだよな。
次から次に続く言葉が、前の文に掛かってくるんだけど
俺の脳の容量が足りなくて、スタックオーバーフローみたいな。
>>901 つまりタスク間での識別をどうするかってことかな?
そういう場合はタスクシステムの外に、当たり判定を専用に取り持つモジュールを作って、
タスクがそのモジュールに自身を登録するようにするといいと思うけど。
>>901 全てのオブジェクトを一つのリストに突っ込むからそういうことになる。
1本のタスクリストの枠に捕らわれるからそうなる。
遅くなる原因も分かってるんだし、それを解決する方法はすぐ出てくるだろ。
当たり判定を楽に取るには、種類ごとにリストに分けておけばいい。(バケツソート)
タスクシステムでもこういう方式はよくやる方法なんだけどね。
906 :
名前は開発中のものです。 :2005/09/18(日) 19:06:37 ID:UJinuGYq
はじめまして。既出かもしれませんが(っていうか、スレ違いかも?)、お聞きしたいことがあります。 MMOで簡単なチャットゲームを作るのには、どのくらいの規模でできるものなのでしょうか? できれば、人数や時間など目安となる数字を教えていただけるとありがたいです。
>>906 質問の回答とは別になるけど。
一人用のゲームとか何でもいいから通信ソフトは作ったことがあるの?
908 :
名前は開発中のものです。 :2005/09/18(日) 20:11:45 ID:YaskzOsF
どうも901です。 バケツソートを調べてるんですがまだいまいち感覚がつかめません。 どこかにサンプルのソースとかおちてませんか?
バケツソートワロス 教本には載ってないだろ?w
911 :
名前は開発中のものです。 :2005/09/18(日) 20:56:57 ID:YaskzOsF
908です。 バケツソート自体はGoogleで調べてわかりましたがそれをタスクに応用 したソースがあるともっとわかりやすいなーと思ったので書き込みました。 バケツソートに関してはもう何となくは理解できました。
>>911 普通はアルゴリズムを理解して自分で組んでみるものだぞ
サンプルが分かりやすさ優先の冗長なソースコードだったらどうするの?
>>901 、
>>911 その前に、君の場合はどういうものを「タスクシステム」と呼んでいるのか。
この単語、人によって定義が違うから説明するなり出典を明らかにしてほしい。
君の手元にある「タスクシステム」ってのがただのリストに過ぎないと仮定すると
>>901 の質問内容は本当に初歩の初歩のごく一般的な探索問題ということになるし
>>911 の質問内容に至っては、リストの基本操作すら実は満足にできないのでは
という疑惑が出てくる。
基本的な計算機リテラシを身につけることを強く薦める。
914 :
追伸 :2005/09/19(月) 03:07:06 ID:E//7zfje
基本情報処理試験(旧二種)のシケタイ本でも一冊買っておくといい。 安いしカラーだしパンピーでもDQNでも分かるように工夫してある。 由緒正しい良書や定番本はム板の書籍スレあたりを参照すべし。
915 :
名前は開発中のものです。 :2005/09/19(月) 13:03:47 ID:bq2qKOiW
Borland C++ Builder
BCC Veveloper
DirectX 9.0
これでC言語のゲームの勉強をしていたのですが、ある日突然プログラムを実行すると
「問題が発生したため、***.exeを終了します。ご不便をおかけして申し訳ありません。」
と表示されるようになってしまいました
上記の3つとも再インストールしてみたのですが、状況は回復しません
何か解決方法はありませんでしょうか
ちなみにこちらのサイトを参考に勉強を進めていました
ttp://www.plustarnet.com/aspil/Programming/
>>915 おぉぉぉぉ。
オレと全く同じコンパイラを使って全く同じサイトで勉強してるね。
んで、最近何か怪しいものでもインストしたか?
917 :
名前は開発中のものです。 :2005/09/19(月) 13:11:22 ID:bq2qKOiW
>>916 いえ、何もインストールした覚えはないんです
一応Norton AntiVirusでスキャンしましたが、ウィルスも見つかりませんでした
918 :
915 :2005/09/19(月) 14:27:47 ID:bq2qKOiW
すいません、プログラムの方に問題があったようです
前の段階に戻したら動きました
どうやらvoid CJikiShot::Init(void)内にこの一行を書くと動かなくなってしまうようです
m_Texture.Read(g_pD3DDevice, "DataForWork/JikiShot.tga");
これがソースファイルです
ttp://uppp.dip.jp/src/uppp12858.cpp
919 :
915 :2005/09/19(月) 14:28:57 ID:bq2qKOiW
上のサイトで言うと2D編「自機の弾2」のところです
なぜ体験版があるにもかかわらず試してみようとも思いませんか。
確か外国製のマップエディタで、スクエアでもヘックスでも使えるものが あったと思うのですが、名前やURLを失念してしまいました。 心当たりのある方、お願いいたします。
>922 MappyEditorだっけ?
障害物の回避や移動範囲の制限のサンプルで よく四角い箱に球が入ってて、その球が箱の中のあちこちを跳ね返るプログラムありますよね。 あれはif( X > 500 && Y > 500) ... とか直線的なので条件作るの簡単なのでわかるんですが、 例えば☆型とか○型とかぐにゃぐにゃしてる範囲内とかの場合はどうするんでしょうか? それができれば経路探索でノード一杯つくって動かすより、楽かなーって思ってるのですが。 範囲の外周の座標を細かくとって比較たくさんするだけで原理は四角と同じなのかな・・・
当たり判定ではなく、跳ね返りのベクトル求めるにはどうするのかと聞いているようだが。 俺にはわからん。
つーかいまいち何が聞きたいのかわからんが 関数で近似出来る形状ならそれで 出来ないならポリゴンで近似じゃねーの?
自主製作ゲーム:開発状況報告スレでお世話になってる者ですが、 ちょっと質問です。 bccとDirectX9.0cでゲームつくってるんですが、DirectXSDKについてくるライブラリではなく、 DirectX libraries for C++Builderってやつを使ってコンパイル等してます。 コンパイル時にbcc用?の .libは必要だとしても、実行時にbcc用?の D3DX9_27.dllは必要でしょうか? 要するに、製作したゲームファイルを公開した時、 Microsoftの"ソフトウェア開発者用の再頒布パッケージ"のD3DX9_27.dllがあれば、 downloadした人はプレイできますか? 質問文分かりづらくてすいません。
>>925 線分交差で検索したら、やりたい事にどんぴしゃみたいです。
ありがとうございます。
壁の形状をどうするか、って話なら、
>>927 の通りかと。
反射方向ならEMBM等でお馴染みの反射ベクトルの求め方を使えばいい。
反射点を基準にして、弾の方向をE、壁の法線をN、反射方向をRとすると、
R = 2*(N・E) - E
図に描けばすぐわかるはず。
931 :
929 :2005/09/20(火) 21:08:10 ID:8Ypzm3bt
あほな子ですみません。
箱の中に球が存在するかどうかって部分だけ考えてて、
壁にぶつかって反射とかそういうの全然まだ考えてなかったのですが
なんか脳内変換されて
>>924 みたいに書いてました。
で、どんぴしゃとかいってますが、ちょっとぐぐって雰囲気で言っちゃいました。すいません。
>>927 さんがいってるような、関数で近似ってそういや高校だったか大学だったかで
3次関数の近似とかやったようなやってないような感じですっかり忘れちゃってるのですが
近似曲線と点の関係が知りたい事ぽいのでもうちょっと調べてみます。
で、それが分かったら
>>930 さんが書いてる反射を調べてみます。
スレ違いかも知れませんが質問させて下さい。 販売されているゲームを、自分で模倣して作って それを販売したら著作権等に違反するのは分かりますが 無料配布程度ならどうなるんでしょうか?
>>932 それも程度問題。やりすぎると威力営業妨害。
人様に遊んでいただくなら自分なりのものを出せよ。
C++で、テキストファイルを読み込んで様々なクラスのインスタンスを初期化する 時は、どうやるのが定石なんでしょ? 今のところ、下のようなやり方をやろうと思っている。 1つのオブジェクトのパラーメタを1行で表現する。 ただし、最初のパラメータはどのクラスなのかの識別子。 例)tiger 100 100 500 // トラ、初期座標は(100,100)、体重500kg クラスは仮想関数getLineでその行を読み込み、sscanfでパラメータに分解して セットするようにする。上の例だとtigerクラスのインスタンスをつくり、getLineで 文字列を読むことになる。当然getLineの実装はクラスによって異なる。 もっといいやり方があったら、教えてください。
>>933 やっぱり無料でもマズイんですね。
どうも。
>>934 別にそれでいいんじゃないの?
boost::serializationあたりを使うとXML形式で保存できるけどね
>>932 以前cxxxxxであったな。
配布した本数*本家ゲームの定価を請求されている。
893系の会社のゲームをパクるとそれなりの結果があることをお忘れなく。
これとは話が別だが、
この板で某社のCGを勝手に再利用してゲーム作ってる奴がいる。
ずっとチェックされてるので人目につくところで配布するとき覚悟するように。
無料なのに訴えられるのが意味不明。 まぁ、分からない事も無いが。 それにしてもゲームの悪い点を改善して 良ゲーに直しても悪いというのは困った世の中ですね。
おいおい、無料だったら訴えられ無いと考える方が意味不明なんだが・・・ タダだったらパクってもいいのか?
> この板で某社のCGを勝手に再利用してゲーム作ってる奴がいる。 > ずっとチェックされてるので人目につくところで配布するとき覚悟するように。 どのゲームのことだ?はっきり言ってくれよ…。
>無料だったら訴えられ無いと考える方が意味不明なんだが・・・ 誰も訴えられないとは書いてねぇだろ。良く読め阿呆。
てゆか、893系会社ってどこ? 気になる。有名どころをあげてみてくれー。
>>941 939じゃないが、938はそういう意味にしか取れないんだがw
個人として訴えられるだけならまだいいが 周りには迷惑かけるなよ
他人の権利を侵害しちゃいけません
エロゲ系の同人二次創作で訴えられたのはあるのかな かなり無法地帯っぽいが。
同人系の2次著作物は、ほとんどが黙認状態。ただし、訴えられて裁判になったのもある。 そう言う物だ。
>そういう意味にしか取れないんだが 所詮、お前がそう思ってるだけ。 自分=世間の考えと決め付けるな
>>949 >>938 の
>無料なのに訴えられるのが意味不明。
>まぁ、分からない事も無いが。
おいおい。これ読んでそう思うやつはいくらでも居るぞ。
普通なら2行目は、「そういう考えになるのは理解できるが」てな解釈だろうから
1行目は「無料なら訴えられないだろ」って言っているように思うだろ。
釣りを釣りと見抜けない人には(ゲ製作技術板は)難しい
953 :
名前は開発中のものです。 :2005/09/22(木) 02:00:44 ID:asWYB7pH
で、結局
>>938 は、どういう意味なの?
もう少し詳しく。
>>953 例えば
>>953 必死になって作った超良ゲーがあるとする。
でもそれは宣伝不足で余り売れなかった。
そこで俺が目をつけてキャラデータだけ差し替えて無料配布した。
すると俺は楽してネ申扱いされた。キャラが違うだけの
>>953 のゲームはわざわざ金を払う価値は無くなる。
このとき
>>953 が俺を訴えるのは間違ってる、という意味。
>>954 じゃ
>>938 の言ってる事はおかしいな。
ます、ゲームはキャラデータだけでできてる訳じゃない、
さまざまな部分に作者の労力やアイデアが含まれてる、そして作者の権利は守られなければいけない。
それは売れようが売れまいが、有料だろうが無料だろうが関係ないかと。
もひとつ、
>>938 は無料にこだわってる様だが・・・
>>954 が無料にこだわっているのは、割れ厨だから。w
957 :
954 :2005/09/22(木) 03:44:08 ID:e2sqI8fD
え、おれ?
ああ、意味分かった。確かにこの書き込みは俺と
>>938 が同一人物のように取れなくも無いな。
>938の言ってることは 「市販ソフトをクラックして無料で公開しても訴えられるはずが無い」 ということだよな
>>959 無料だからって訴えられないのが意味不明。
困った奴ですね。
著作権という概念を理解できてないK国とかC国の方ですかね?
はぁ。 だからそんなもんは法学板とか行って事例を挙げながら勝手にやっててくださいって感じなんですよ。 おまえらのは自分の解釈を押し付けあっているだけだろ。他の初心者にも迷惑だし。100%質問しづらい雰囲気だろ。 ここはカモを見つけてはネチネチといびって、優越感に浸りたいだけの可哀想な人間の集まりなのかよ。 心の中で答えてみろよ!今! おまえ本当は何がしたいんだよ!やりたい事あんだろ!答えろよ!答えろよ!!!!!!! あwせdrftgyふじこよろしく!
どした?
まあどうせこのスレも余命30レス。存分にやりたまえ
>>963 >おまえ本当は何がしたいんだよ!
この板からあんたみたいなバカがいなくなって欲しい。
無料なら訴えられないとかいうトンデモ理論を展開される方が
初心者には迷惑。
ちょっと話はズレるけど フリーソフトを公開する時も著作権には気をつけた方がいいよ 海外には、他人のフリーソフトを自分が作ったと言い張って 著作権を主張する馬鹿がいるから…酷い場合は作者が逆に訴えられるぞwww SCOトカナ…
>>963 韓国の方ですか?ファビョらないで下さいニダ。
でも確かに無料だから許される領域みたいなのもあるね。 同人系の二次創作は特に。 どの程度までならやっても大丈夫なんだろ? 有料のシューティングを作ってセレクトする自機にビックバイパー入れてたら 訴えられるかな?
>どの程度までならやっても大丈夫なんだろ? コナミは締め付けきつめだからビッグパイパーは無理と思われ。 基本は本家への影響度だろうな。企業側の許容度にもよるし。 あ、どこまで訴えられずにぱくれるかという、販売シムゲーはどうだろう?w