C言語って…
C言語でゲームって作れるわけ?
あんなの文章表示させられるだけでしょ? いや、グラフィカルってアスキーアートのことではなくて。 >>23
十分にグラフィカルだが?っていうか「グラフィカル」の意味間違えて
使ってるんじゃネーの? >>19
文字だけの音ゲーキボンヌ と逝ってみる Cの基本ならここで学べ。あとは自分でな。
ttp://mypage.naver.co.jp/mio14years/sayuri.htm >>38
みお14歳ってちゆ12歳のパクリかYO PS2はC++がメインなのかな?
PSはISAバス用のボードをPCに挿して、
CでSource書いて、DOSプロンプトでコンパイル、
実行をボード経由でテレビに出力してるって知り合いに聞いたけど。
コンシューマで開発してた知り合いは、
みんなPCに移って来ちゃたからだれか教えて。 VectorCなどを用いて意地でもCのみでVUコードを書いてる、って人いますか?っていうか可能ですか? o
/  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
/ このスレは無事に /
/ 終了いたしました /
/ ありがとうございました /
/ /
/ モララーより /
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
∧_∧ / /∧_∧
( ・∀・) / /(・∀・ )
( )つ ⊂( )
| | | | | |
(__)_) (_(__) >>45
Infocom を知らんのか !!
……知らないだろうなぁ。 状態を全部文章でユーザーに伝える事ができれば
格闘アクションゲームだって。 C言語でゲームって作れるわけ?
あんなの文章表示させられるだけでしょ?
ANSIの範囲であればテキストを出すことしか出来ないのでそれほど
間違いではありません。ただPS2用のグラフィックライブラリを利用
すればグラフィカルなゲームをC言語で作ることは出来ます。
現在のゲーム開発ではC/C++でゲームを作ることはごく一般的に行わ
れています。一応私もゲーム開発者の一人です。現在はC++でXboxの
ゲームを作っています。まずはDirectXのサンプルでも読んでみるのは
どうでしょうか?すべてC++で書かれているのが良くわかると思います。 Windows 環境なら Windows SDK があれば C言語からでも OS の
グラフィックスインターフェースを利用できます。 うわっ、>>1キモッ、おまけに臭え!!ゲロゲロゲェ――――――――――!!!!
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ぅぉぇっぷ
〃⌒ ヽフ
/ rノ
Ο Ο_)*** >>48
xboxで開発って、マーケット上での勝算を見込んでのことですか? Cはもういらないんじゃないか。
C++はCをサブセットとして含んでるし(微妙な違いがあるけどそれはどうでもいい範囲内)
低水準なCと比べると多少生産性高いし、Cの仕様でしか書けないゲームなんて今は無いだろ。
問題があるとすればC厨とかCしかできませんとほざくやつか。 機種依存で良ければVRAMorGDI直アクセス。
入力ももちろん同じように。
ライブラリに頼らないでもできなくはない。 >>41
普通にCは使えます。C++使わなくても開発できるPS2。 >>55
だろうな。
>>53
ローグのフィールドはAAに近いが、キャラクターはAAとは明らかに違う。 60でマジレスする快感
>C言語でゲームって作れるわけ?
はい
>あんなの文章表示させられるだけでしょ?
いいえ >51
>xboxで開発って、マーケット上での勝算を見込んでのことですか?
MSが金出してくれるので。大手はこういう理由で参入しているところが多いのでは?
まあ確実に儲かるのでこちらとしてはありがたいですね。
作りやすいし悪くはないですね。 XBOXの開発に慣れちゃうとPS2戻れない罠。
ステップ実行できるし、本当楽です。 統合環境あるのに、使わない人ってムカツク。
「このstruct(class)の宣言に行って」と言ったら
5秒以内に出してよ。イライラする。 漏れはvimかemacsあればいいよ。
カーソルキーやマウス使う環境なんてめんどくせーよ。
つーか、自分が使いやすく効率のよい環境で組めばいいんだよ。
カルシウム不足の>>71はedlinで修行を積んで来い。 「つーか、自分が使いやすく効率のよい環境で組めばいいんだよ。」
なんとなく同意。71は開発スタイルか人間関係のどっちかを見直しる! 「統合環境あるのに、使わない人ってムカツク」人ってムカツク。 手馴れたエディタあるのにわざわざ統合環境をカスタマイズもせずにケチつける人ってムカツク アララ、、反感買ってるようだ。
どう考えても、統合環境の方が便利じゃん。
手馴れたエディタはそろそろ卒業して、新しいもの使おうぜ。
grepショートカット>名前入力>ドバっと出た奴から、目的の物を探す
とかって、オペレーティング遅すぎ。時間掛けるなよと。そんなとこに。
自分が編集してたファイルをalt+tabで探したリ、とか。アホかと。
仕事がはやけりゃ文句もいわんが。
そういう奴に限って、、遅いっ。遅すぎ。 統合環境に限らず、文句言ってる香具師の方が仕事遅いがな・・・
grepでどばっと出たなんて言ってる時点であんたのレベルがわかるよ。
まぁ、相手に物押し付けるような香具師はプログラマに向いてないってこった。
帰っていいよ。 だから、5秒以内に言われた関数定義を出せるなら、文句言わんし。
出せないなら、どうにかしろ。イライラする。 71必死だな。
おまいは落ちた食べ物3秒ルールとかも実践してんじゃねーのか?
あ、返事は5秒以内に頼むな。イライラするから。 71さんの周りの人って、関数定義探すのにgrepしてるの?
TAGファイル作っとけば、一発でジャンプできるのに。
TAGジャンプが出来ないエディタ使ってるのかな? xをn乗するコードを書きましたがどうですか?Cを初めて3日目の者です。
/* xをy乗するといくらか? */
printf("xをy乗します。\n");
printf("xを入力(not 0):");
scanf("%d", &x);
if(x == 0) return 0; /* 0が入力されたら終了 */
printf("yを入力(not 0):");
scanf("%d", &y);
if(y == 0) return 0; /* 0が入力されたら終了 */
if(y == 1) { /* 1乗ならそのまま出力して終了 */
printf("%dの%d乗は%d\n\n", x,y,x);
return 0;
}
ox = x; /* xの値を避難 */
count = 1;
while(count != y) {
x = x * ox;
count++;
}
printf("%dの%d乗は%d\n\n", ox,y,x); どうしてx^nと謳っておきながら
コードとドキュメントはx^yなの?
記号の不統一性は混乱する元です。
また、場合わけが気持ち悪いですね。
むしろループや再帰を効率的に使ってもっと簡潔に書くべきでは?
ループを使った場合をささっと書くと、
int res=1;
for(int i=0;i<y;++i){
res*=x;
}
て感じ。
ちなみに0^0=1は定義だけど、いいね? あー、ごめん、ちょっと補足。
85のコードはx,yに値が代入された後、場合わけを含めて計算する。
0を入力されても止める必要は無いし、1の場合の場合わけも不要。
考慮していないのは乗数<0の場合。
0で計算される。 x, y の値を計算の途中で変えちゃってイイならば
while(--y) x*=x; とか。x が答えになる。
ただしこれは y<1 のときにかなり最悪なことになる。
ところで >>84 は一応ループつかってるんじゃないのか? > 85 >>87
えへっ、(省略されました・・全てを読むにはここを押してください)を読まなかったの v
私めんどうくさがりだもん。
…ごめんね。 そだね。
87さんのだと最終的な結果がx^(2^y)になるかな?
swapと一緒でtmpが一個いるよ。
tmp無しで書こうと思ったら、church数みたいに
int func(int xx,int yy){return (n==0)?1:xx*func(yy-1);}
とかあらかじめ関数を作っておいて、
printf("%d ^ %d = %d\n",x,y,func(y));
でOK。
しかし再帰でバグ出すと最悪数時間が消えるので、
他にいい方法があったり、あるいは急ぐときにはあんまりお勧めしないです。 ああっ、やってしまった…。
訂正です。
int func(int xx,int yy){return (yy==0)?1:(xx*func(xx,yy-1));}
これならうまくいくはず…。たぶん…。 やっぱりダメだぁ…。
訂正が面倒だから今回はちゃんとコンパイラ通した。
//再帰を使った階乗計算
#include<stdlib.h>
#include<stdio.h>
int func(int xx,int yy){return (yy==0)?1:(xx*func(xx,yy-1));}
void main(void){
int x,y;
printf("x?");scanf("%d", &x);//xを入力
printf("y?");scanf("%d", &y);//yを入力
printf("%d ^ %d = %d\n",x,y,func(x,y));//計算&結果表示
} ところでx*=xって未定義だったっけ?
x*=xはx=(x*x)と等価だったと思ったけど >>97
そんなことないよ。
xの内容をレジスタに入れてから演算、
その結果をxとして格納する、の順番に処理される(と思う)ので
何ら問題なくxにはx^2が格納されます。 >>99
「x*=xって未定義」に対してそんなこと無いよ
といっておられるのですか?
それとも「x*=xはx=(x*x)と等価」に対してですか?
話の内容から前者だと思いますが、ただ
>xの内容をレジスタに入れてから演算、
>その結果をxとして格納する、の順番に処理される(と思う)ので
a++=a;
とかがあるから、そういう言い方は出来ないと思うんだけど 未定義になるのは副作用完了点と副作用完了点の間で、変数の値が
2回以上変更されているようなケースです。x*=x; は式の先頭から、
副作用完了点である;の位置までに x の値は1度しか変更されて
いませんので未定義には当たりません。 > a++=a;
> とかがあるから、
ありません。
確認しましたがVCではエラー吐きますね。 >>101
やっぱりそうですか、
一応、あってたか・・・
どうもすみません ∧ ∧ ∧ ∧ ∧ ∧ ∧ ∧
∧ ∧ /(,,゚Д゚) (, ゚Д゚) (, ゚Д゚) (*゚Д゚) ̄⌒ヽー
(, ゚Д゚)⊃┳━∪∪━∪∪━∪∪━∪∪━⊂∪━┳ ∧∧
ヽ/ | . ┃ 1ウザイ氏ね! ┃(゚Д゚;)_、
(__∪ ). ┻━━━━━━━━━━━━━━━━┻ `uuuu
゙゙゙゙゙゙゙゙゙゙゙ ゙゙゙゙゙゙゙゙゙ 行番号をいちいち書かずに例えば、
「現在1203行目を実行しました。
「現在1452行目を実行しました。
みたいに表示させいってて実行時の処理経路を明確にして行きたい
んだくぅえども、いちいち行番号を書くのが面倒くさい。
なんかちゃちな置換アプーリ作っておくしかない?
ちなみに環境はbcc+Terapad・・・ 組み込みマクロ __LINE__ と __FILE__ を使う?
全部の行でなくブロック単位にトレース情報を埋め込むツールがあったような気がする・・・ C99で新しく採用された__FUNCTION_だったっけ?
関数名埋め込み機能が激しくホスィ。ログ取り楽だろうなぁ… >113
BCCの__FUNC__と同じ?
やばひ、全然使ってないよ・・・勿体無い。
__DATE__、__TIME__こんなのもあった。鬱 >114
__DATE__や__TIME__は(当然)コンパイル時点の時刻だから
あまり役には立たないよ。せいぜいobjにコメント埋め込むくらいか。
☆。:.+: . /■\
.. :. ( ´∀`) クソスレ、ループスレ ハ シュウリョウシマス
/ ̄ヽ/,― 、\ o。。。
.:☆ | ||三∪●)三mΕ∃.
.:* \_.へ--イ\ ゚ ゚ ゚
+:..♪.:。゚*.:.. (_)(_) ☆。:.+:
☆。:.+::.. ☆:.°+ .. :
。*.:☆゚x*+゚。::.☆ο::.+。 *ρ
「なんでだろ〜♪」 「終了なんだろ〜♪」
/■\ /■\ /■\
( ´∀`) ( ´∀`) ( ´∀`)
⊂ つ⊂ つ⊂ つ
.人 Y 人 Y 人 Y
し'(_) し'(_) し'(_) 【完】
>>118
グラフィック表示の仕方がいまいちわからんのだ ミ ミ ミ
ミ ドドドスッ ミ
ウォリャ! ∧∧ ._ _ _
( ;,,)O..―─┴┴──────────┴┴──────────┴┴──┐
/; ; つ. 終 了 |
〜′ /´ └―─┬┬──────────┬┬──────────┬┬──┘
∪ ∪ ││ _ε3 ││ _ε3 ││ _ε3
/ヽ /ヽ
/ ヽ / ヽ
______ /U ヽ___/ ヽ
| ____ / U :::::::::::U:\
| | /○ ○ ::::::::::::::|
| | このスレ | ├──┤ U :::::::::::::| オワッチャッタ・・・
| | 終了い..|U | | ::::::U::::|
| | ありがと ..| └―┘ U.....:::::::::::::::::::/
| |____ ヽ .....:::::::::::::::::::::::<
└___/ ̄ ̄ :::::::::::::::::::::::::|
|\ | :::::::::::::::::::::::|
\ \ \___ :::::: 〜 終 了 〜