検索結果 164 件

by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: C言語とSDLだけでゲーム作成
返信数: 4
閲覧数: 1836

Re: C言語とSDLだけでゲーム作成

昔SDLでシューティングゲームもどきを作ろうとしました。 DxLibなどに比べると独自の型であったり、メッセージ処理などで少々覚えることは多いですが、特に難しいこともなくそれっぽいものを作りました。 いーめーさんが聞こうとしていることはあまりライブラリに依存しない部分が多いのではないかと思いますが... あたり判定や移動、キャラが持つべきデータなどはどのライブラリを用いても大体同じことが言えますし、調べるならその部分です。 前私が作ったもの http://dixq.net/forum/blog.php?u=77&b=3737 そのとき参考にさせていただいたサイト http://utsukemo...
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: あるクラスからほかのクラスが持つリストにアクセスする
返信数: 4
閲覧数: 1196

Re: あるクラスからほかのクラスが持つリストにアクセスする

回答してくださった方々ありがとうございます。最近プログラミングに手を付けれておらず、返信も怠っていました。
設計を根本的に変える必要があるとのことですが、それほどの時間が取れませんのですいませんが一度このトピックは閉じさせていただきます。

 また、sleepさんに提示していただいた方法で要素にアクセスできるようにはなるようですが、YuOさんの指摘により、その方法での解決は
見送ることにしました。

回答していただいたのにかかわらず、長い間返信をせず、申し訳ありませんでした。
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: あるクラスからほかのクラスが持つリストにアクセスする
返信数: 4
閲覧数: 1196

あるクラスからほかのクラスが持つリストにアクセスする

現在弾幕STGであたり判定を実装しています。 プレイヤーの弾や敵の弾などをstd::listで管理しています。 そしてPlayerクラスとEnemyクラスを持つManagerクラスというものがあり、そこでプレイヤーと敵の双方のあたり判定をしています。 そこでManagerからPlayerクラスのリストを参照しようとしています。リストの型がもともとC++や標準ライブラリ等が持っている型であったり、 型がグローバルに宣言されていたなら問題ないのですが、リストの型がPlayerクラスが持っている構造体であった場合、 どのようにManagerクラスから参照すればよいのでしょうか。 つまりPlayerク...
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: ファイルを読み込むプログラム
返信数: 3
閲覧数: 760

Re: ファイルを読み込むプログラム

申し訳ないですが、私はプログラミングを課題として出されたことがない(というか大学生や専攻生でない)ので課題の出され方や それに対してどうすればいいのかわかりませんが、とりあえずDBさんのソースコードだと一行ずつ読み込んでそのまま出力している だけですので、とりあえず一文字ずつ読み込んでコンマを\tに、"を消してコンソールに出力させてみました。 もともとExcelのデータが非常に横に長いのでコンソール上できれいに並べるのは今の私にはできませんでした。 ファイル出力であれば出力をファイルストリームにするだけです。 #define _CRT_SECURE_NO_WARNINGS #include <...
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: 弾幕STGにおけるあたり判定の実装方法
返信数: 0
閲覧数: 342

弾幕STGにおけるあたり判定の実装方法

いつもお世話になっております。 前回最後に書き込んだ通り、敵の弾とプレイヤーのあたり判定についていくつか悩んでいる点があります。 まず最初にプレイヤーの弾と敵とのあたり判定は http://bituse.info/game/shot/15 こちらのサイト様をそのまま使いました。 こちらのサイト様が採用している大まかな設計は、 http://bituse.info/game/shot/2 このようになっています。 プレイヤーの弾は配列で管理している(そもそも種類も量もそれほどない)ので、サイト様の方法をほぼそのまま 使用することができました。具体的にはPlayer Enemyクラスにゲッターセッ...
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: ファイルを読み込むプログラム
返信数: 3
閲覧数: 760

Re: ファイルを読み込むプログラム

まず提示されたリンク先にテキスト形式でダウンロードできませんが?これはExcelの機能などを使ってカンマ区切りに出力させるのか?
そもそもExcelでダウンロードするとブックが二つあってどちらを読み込むのか?どちらも読み込むのか?
加えてその課題内容だと読み込めといわれているので、何ら出力方法などが提示されていませんが(そもそも出力しろなど書いていない)
Excelファイルのようにきれいに表示するとは何を指しているのでしょう。

とりあえずカンマをすべて\tに置き換えるだけでもそれなりにきれいになるのでは?
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: C言語の表示順について
返信数: 1
閲覧数: 523

Re: C言語の表示順について

こちらの環境では正常に動きます。 Visual Studio Community 2015 勘ですが、scanfの前に fflush(stdout); などと入れると解消されるかもしれません。 #include <stdio.h> int main() { int a, b, c; b = 0; c = 0; printf("1からその数までの和を求めたい数を入力してください\n"); fflush(stdout); scanf("%d", &a); while (b <= a - 1) { b = b + 1; c = c + b; } printf("%d\n", c); return 0...
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: double型の小数点以下の0を消したいです。
返信数: 2
閲覧数: 1904

Re: double型の小数点以下の0を消したいです。

少し調べた所、iomanipとsstreamの機能を使い実現できそうです #include <iostream> #include <iomanip> #include <sstream> #include <string> using namespace std; int main() { double pi = 3.1; //倍精度浮動小数点 ostringstream sout; //stringの強化版的な sout << setprecision(0) << pi; //iomanipを使い書式指定 string str = sout.str(); //string型に変換 cout...
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: 弾幕STGにおける弾の描画順序について
返信数: 4
閲覧数: 819

Re: 弾幕STGにおける弾の描画順序について

回答ありがとうございます。 std::listを用いて弾を管理してみました。 現在参考にしているサイト様に影響され、bulletはEnemyが持つ構造体となっています。よって登録処理や 移動処理が全てEnemy.cpp内に存在しますが前面云々に関しては一応解決していますので一度解決とさせていただきます。 申し訳ないのですが、Dixqさんが提示してくれたコードが(私の読む技術がなさすぎて)読めないので... 申し訳ないですが、現在悩んでる別クラス間の座標の受け渡しに関してもトピックを建てようと思っているので、その時に合わせてお願いします。 現状当たり判定は実装できていませんが、6万ほど弾を描画し...
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: 弾幕STGにおける弾の描画順序について
返信数: 4
閲覧数: 819

Re: 弾幕STGにおける弾の描画順序について

回答ありがとうございます。  まずZバッファに関しては、弾の登録時間(後から追加)ごとにZ座標を与えてやれば、先頭から描画したとしても、後の方から登録された弾のほうが前面 に描画されるのでは、という意味で書き込みました、が、ご指摘通りおそらくZバッファに関する知識が曖昧なので今回は別の方法を採用したいと思います。  配列とは別にstd::listを用いた方法、とのことですが「フラグが降りるタイミングでリストから削除」とありますが、その時点で削除された部分は空白になるのでしょうか? あるいは自動的に先頭、または末端に詰められるのでしょうか...? リストにも順番が存在するとすれば、やはりリストの...
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: 画像の表示
返信数: 5
閲覧数: 1252

Re: 画像の表示

本当にすべて最初からやり直しましたか?
プロジェクトにWin32プロジェクトが選択されていますか?
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: 弾幕STGにおける弾の描画順序について
返信数: 4
閲覧数: 819

弾幕STGにおける弾の描画順序について

いつもお世話になっております。 現在C++ DxLib ver 3.16bを用いて弾幕STGを作成しており、 その中で敵弾の登録、及び描画の際の描画順序に関して悩んでおります。 開発環境 VS Community 2015 具体的に言うと、大量に弾幕が描画され、弾同士が重なる場合、通常あとに発射された弾が後ろにあるように見えるのが普通であり、 ほとんどのSTGにおいてそうなっているかと思いますが、現在の弾の登録の実装方法だと先頭からフラグが立っていない要素を探し 初期化する方法をとっているため、弾が画面外に出て削除された場合に弾の描画順序が前後することがあります。 これらの管理方法として調べた...
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: 画像の表示
返信数: 5
閲覧数: 1252

Re: 画像の表示

まず、画像のロードはメインループ外で行うべきです。それにメインループ最後にWaitKeyを置いているのはなぜでしょう、
リフレッシュレートで動作するゲームを作成している場合必要が無いかと思います
加えてそのエラーはDXライブラリを使用する際のプロジェクトの設定にて、
文字セットをUnicodeのままにしている可能性があります。マルチバイト文字を使用するように設定を変更してください。
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: キャラクターの移動について
返信数: 7
閲覧数: 1044

Re: キャラクターの移動について

さっきのやつは色々とおかしかったので少し修正しました。 ・まず提示されたコードの19行目がピリオドでなくコンマが使われています。 ・ else if~が大量に出現するのはマズい、というか自身でも何がどうなっているのか理解できなくなってしまいそうなので、 そんなことなかったです。 斜め移動時に  フラグを立て、斜め移動した後は純粋な横、縦移動をしないように作ってみるとそれなりの動きをしてくれました。 ・ 実数型を使われているのでしょうか? 切り落とされて移動できない可能性もあります。 こちらではfloatにしました  初期化部より実数型なのでしょう。 ご確認ください。 というか殆どコンマのせいに...
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: キャラクターの移動について
返信数: 7
閲覧数: 1044

Re: キャラクターの移動について

とりあえず動かしてみたかったので最小限で動くようにしてみました。 #include "DxLib.h" #include <math.h> int key[256]; int key_update(int key[]) { char all_key[256]; GetHitKeyStateAll(all_key); int i; for (i = 0;i<256;i++) { if (all_key[i] != 0) key[i]++; else key[i] = 0; } return 0; } int slow_move(int *x, int *y, int *key) { if (ke...
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: DxlibのMovieについて
返信数: 4
閲覧数: 806

Re: DxlibのMovieについて

こちらでも試してみました。 再生ファイルの拡張子ogvより Theora + Vorbisだと思います。 とりあえずその形式でこちらで適当な動画をエンコードした結果音がなりませんでしたので、恐らく仕様かと思います。 というわけで音だけでエンコードして同時に再生させました。 ループ内で再生する場合ならば #include "DxLib.h" int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { ChangeWindowMode(TRUE), DxLib_Init(), SetDrawScreen(DX_SCREEN_BACK); SetWi...
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: Dxライブラリーについて
返信数: 3
閲覧数: 924

Re: Dxライブラリーについて

よくわからないですが、とりあえずこちらの説明に従いもう一度導入しなおしてみたらどうでしょうか。
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: 桁数の数え方
返信数: 6
閲覧数: 802

Re: 桁数の数え方

インデントがぐちゃぐちゃ(というか最後のカッコが抜けてる?)ですので揃えることを意識してください。 #include <iostream> int main(void) { using std::cout; using std::cin; int a; int keta = 0; cout << "整数値を入力せよ:"; cin >> a; do { a = a / 10; keta++; } while (a); cout << "その数は" << keta << "桁です。\n"; cin.ignore(); getchar(); return(0); } 一行一行何をしているか書き出して...
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: この画像を歩かせるにはどうしたらいいですか?
返信数: 5
閲覧数: 867

Re: この画像を歩かせるにはどうしたらいいですか?

全く貴方の開発環境に関して記されていないし、また「こちらのほう」が何を指しているのかがわからないのでなんとも言えないですが... 予想で書くと、 とりあえずその画像のキャラあたりの画像サイズとかがよくわからないので、横3、縦4分割させていると考え、キーボードのアローキーで 動かすなら、 1,下が押されるとき 0 -> 1 -> 2 -> 0 -> 1 ... 2,左が押されるとき 3 -> 4 -> 5 -> 3 -> 4 -> 5 ... ...以下同様 のように値を変化させるコードを書けばよいかと思います。 その方法は ここらへん が参考になると思います。 そして、この掲示板にはフォーラム...
by Hiragi(GKUTH)
3年前
フォーラム: C言語何でも質問掲示板
トピック: ■ 新年の挨拶トピック~2016~ ■ 今年の抱負 ■ [雑談]
返信数: 7
閲覧数: 2026

Re: ■ 新年の挨拶トピック~2016~ ■ 今年の抱負 ■ [雑談]

あけましておめでとうございます。

今年の目標は受験勉強と志望校に対するモチベの向上と合格すること、PCの使用時間を減らして勉強に割り当てれるように頑張る事。あと大学で具体的に何をしたいのかを明確にしたい
などなど...できんのかねコレ、 とりあえず大学が先で、合格したらプログラミングにふけるんだ...!
まぁ合否が分かるのは一年以上先の話ですし、また来年のスレッドで
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: C言語
返信数: 7
閲覧数: 691

Re: C言語

まず現時点で、返り値に計算結果が必要であるので関数の型はcomplex_numberである必要があります。
複素数同士の計算と言うのは調べれば出てくる(高校の数IIで習った)のでその通りに実装すればよいかと思います。
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: 最近DXライブラリを始めたのですが・・・
返信数: 6
閲覧数: 1032

Re: 最近DXライブラリを始めたのですが・・・

DxLibフォルダを特定の場所に置くのは一度だけでいいかと思いますが、プロジェクトの設定からはプロジェクトを作成するごとにする必要があります。
テンプレート化させることも出来ると思いますが、私は毎回これらの設定を行っています。 慣れれば5分とかからず終わっちゃうので
面倒だと思ったことはあまりありません。
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: VisualStudio2010でディレクトリ
返信数: 4
閲覧数: 670

Re: VisualStudio2010でディレクトリ

ドライブラベル:\Users\Username\Documents\Visual Studio 2010\ ココ以下のディレクトリはアンインストールしても保持されるかと思います。 というわけでココの中のSettingsなるフォルダを削除して、再生成させればいいんじゃないでしょうか?(未検証ですし本当に設定が全て消える気がしますけど) 或いは普通にIDEから「設定を初期値に戻す」、のような選択肢が有る気がするのでそれを押せば済む話ではないでしょうか、 ソリューション自体の設定ならば拡張子.suoのファイルが設定ファイルを指してると思いますのでそれを削除すればよいかと思います(一応バックアップ等は...
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: 宣言した変数の用量は中身の値に関わらず一定ですか?
返信数: 9
閲覧数: 1562

Re: 宣言した変数の用量は中身の値に関わらず一定ですか?

容量、といいますか、int型が宣言された時点で32bit(或は16bit)はメモリ上で「確保」されますので、その確保されたところに値を書き込む感じでしょうか、
良くある例で言うならば、変数は箱であるとよく比喩されますが、箱の中にどんな値を入れようとも箱の大きさは変わらんわけです。
メモリー内部では大きな値の分メモリセルの状態が1である(ONである)から容量が変わってるといえなくはないかもしれませんが...

画像ハンドルに関しては、int型の変数に画像そのものが入ってるわけではなく、int型の変数に入るのは画像の位置を示す情報であるということです。
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリについて
返信数: 3
閲覧数: 843

Re: DXライブラリについて

コード:

LoadGraphScreen(50,100, "画像/キャラクタ00.png",TRUE);/*画像を描写する*/
この部分の""で挟まれている部分をその画像への絶対パスにして実行してみてください。
表示されればパスの指定が間違っているかと思われます。
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: 浮動小数点の科学記法と整数のキャスト
返信数: 9
閲覧数: 2277

Re: 浮動小数点の科学記法と整数のキャスト

恐らくint型の扱える値の大きさを超えてるんじゃないですかね。
1.23456e+789 = 123456000000...
int型は -2147483648~2147483647しか表現できなかった気がします。
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: 横アクションげーむのジャンプのやりかた
返信数: 4
閲覧数: 856

Re: 横アクションげーむのジャンプのやりかた

適当ですが、とりあえずボタンの押す時間によってジャンプ力が変わるようなモノを作ってみました。 コピペで動きます。 ただし、左右移動はできませんし、何しろこのままでは見た目が不自然すぎます。 もっと改善する必要があるでしょう。 それに、このコードは考え方の一つに過ぎませんので、もっと別の方法、効率のいい方法もあるかと思います。そこらへんは調べるなり考えるなりして頑張ってください。 #include "DxLib.h" int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { //アプリ初期化 ChangeWindowMode(TRUE); //...
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: 横アクションげーむのジャンプのやりかた
返信数: 4
閲覧数: 856

Re: 横アクションげーむのジャンプのやりかた

これだ!といった書き方は無いので、それっぽく見せるしかありません。 以前私もソレをしてみようとしました。完全に参考にならないかと思われますが、
一応おいておきます。
http://climbi.com/b/3527/0

そもそもボタンの押し具合によってジャンプ力が変化するというのは現実の物理法則に反しているので、完全な再現はありません。
それっぽく見えればいいのです。

ジャンプボタンが押されている時とそうでないときで、落下速度を変化させるなどで対応すると良いかもしれません。
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: [C++]クリックしたらボールが発生して自由落下
返信数: 18
閲覧数: 5545

Re: [C++]クリックしたらボールが発生して自由落下

このままだとクリックしている間はずっとボールが放出され続けてしまいます、クリックされた瞬間だけ、ボールを追加する必要があります。
加えてマウスの座標はメインループ外で取得しているので、プログラム起動時の位置しか取得できないのでは?(間違っていたらすいません。)
特にsoftyaさんも仰っていますが、毎フレーム ロード->描画を繰り返すのは良くないと思います。Show関数も同じように画像のロード部分はメインループ外でするべきです。
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: [C++]クリックしたらボールが発生して自由落下
返信数: 18
閲覧数: 5545

Re: [C++]クリックしたらボールが発生して自由落下

クリックされると、フラグが立って、フラグが立ったボールを処理する...
などといった方法が簡単だと思いますが。

取りあえず現状のソースコードを張ってみてください。
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: ウェーブマシンのようなモノを描画したい。
返信数: 19
閲覧数: 3032

Re: ウェーブマシンのようなモノを描画したい。

私がNo: 15で指摘した問題がまだ修正されていないようですね。 そのようです。 今のところとりあえずNo.7最後の行の問題と、No.15で指摘して頂いた点は改善しました。(wave.cpp Line:36) 現時点での動作するソースコードを張っておきます。 wave.h #ifndef DEF_WAVE_H #define DEF_WAVE_H //中心に向かっての加速度 const double G = 1; //一つの質点が持つ情報 typedef struct { //座標 int x; int y; //加速度 double v; }dot_t; //一つの波が持つ情報 typed...
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: ウェーブマシンのようなモノを描画したい。
返信数: 19
閲覧数: 3032

Re: ウェーブマシンのようなモノを描画したい。

>>みけCATさん とても早い返答、ありがとうございます。 next_wave[0]の内容が初期化されていないことに気づいていませんでした、修正しました。 ひとまずNo.9以降の問題が解決しました、ありがとうございます。 No.7の私の投稿の最後の行の問題がまだ残っていますので、もう少し考えてみます。 加えて、current_wave->dot[0].x = 0のyの値が異常であるのが分かっているので、それも考えてみます。 void Wave_Update() { //中心に向かって加速度をつける if (current_wave->dot[0].y < 240) { next_wave->d...
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: ウェーブマシンのようなモノを描画したい。
返信数: 19
閲覧数: 3032

Re: ウェーブマシンのようなモノを描画したい。

加えて、Tetuさんの右側からずらすように処理を描き直してみましたが、2回に1回しか描画されない上、波に変化がありません。 for (int i = 640; i < 0; i++) 640は0より小さくないので、このfor文の中身は一度も実行されないはずです。 2回に1回描画されるのは、wave[0]のdot .xのデータが消されないからです。 ただのミスでした、申し訳ないです。 void Wave_Update() { //中心に向かって加速度をつける if (next_wave->dot[0].y < 240) { next_wave->dot[0].v = current_wave-...
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: ウェーブマシンのようなモノを描画したい。
返信数: 19
閲覧数: 3032

Re: ウェーブマシンのようなモノを描画したい。

申し訳ありません。2時間ほど考えましたがみけCATさんの投稿されたコードの67-71行目の内容が全く理解できません。 現在のフレームが次のフレームになるのと次のフレームが現在のフレームになるのとの違いは何か?全くわかりません、何を言ってるか分からないかもしれませんが... そもそも時間は一方通行なのに「移動」ではなく「交換」しているのは何故か? 加えて、Tetuさんの右側からずらすように処理を描き直してみましたが、2回に1回しか描画されない上、波に変化がありません。 というかダブルバッファという仕組みすら2時間考えた末に全く理解できませんでした。次が現在になる、現在が次になる。どちらも同じ意味...
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: ウェーブマシンのようなモノを描画したい。
返信数: 19
閲覧数: 3032

Re: ウェーブマシンのようなモノを描画したい。

softya(ソフト屋) さんが書きました:まじめに物理でやるとすると、こんな感じになります。
http://www.rinearn.com/code/spec/201211 ... ring_wave/
各質点がお互いに影響しあう形です。
私が求めている最終目標がコレです。といっても高校でまだ波が終わっていませんし、(というかまだ物理基礎という基礎レベルの物理。)
固定端反射、自由端反射や波の重ね合わせといった各質点の物理法則を厳密に再現するほど知識も技術もありませんので、これらの実装は
それなりに先になりそうですが...(考えるのは楽しいんですが定期考査が。)

いずれ挑戦してみようかと思います。
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: ウェーブマシンのようなモノを描画したい。
返信数: 19
閲覧数: 3032

Re: ウェーブマシンのようなモノを描画したい。

とりあえず他の部分を補ってコンパイルできるようにしてみました。 反射はしませんが、波が描けました。 #include "DxLib.h" #include "KeyBoard.h" const double G = 0.5; typedef struct { int x; int y; double v; }dot_t; typedef struct { dot_t dot[640]; int late; }wave_t; void Wave_Init(); void Wave_Update(); void Wave_Draw(); wave_t wave[2]; wave_t *curre...
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: ウェーブマシンのようなモノを描画したい。
返信数: 19
閲覧数: 3032

Re: ウェーブマシンのようなモノを描画したい。

はい、私も先ほどソレを思いついて void Wave_Update() { //中心に向かって加速度をつける if (wave.dot[0].y < 240) wave.dot[0].v -= G; if (wave.dot[0].y > 240) wave.dot[0].v += G; //加速度のコピー for (int i = 640; i < 0; i--) { //一つ前の点の加速度を今の点の加速度へコピー wave.dot[i-1].v = wave.dot[i].v; //座標に対して移動させる wave.dot[i].y -= wave.dot[i].v; } //Zキーで加速...
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: ウェーブマシンのようなモノを描画したい。
返信数: 19
閲覧数: 3032

ウェーブマシンのようなモノを描画したい。

いつもお世話になっております。 最近、高校物理で波に関することを学びまして、その中で ウェーブマシンというものを見ました。 [youtube]https://www.youtube.com/watch?v=t_43vJ5eQJo[/youtube] それをDxLibで再現できないかと思い、プログラムを組んでいたのですが、早々に詰まってしまいました。 wave.cpp #include "DxLib.h" #include "KeyBoard.h" const double G = 0.5; typedef struct { int x; int y; double v; }dot_t; typ...
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: この掲示板について 【雑談】
返信数: 83
閲覧数: 14503

Re: この掲示板について 【雑談】

>>usao(比類なきプログラマー)さん

リア充爆発しろはネタですしね。
真面目に書くとリア充でも消失したり存在が消えたりするとマズいので、私も「非リア化しろ」が一番好ましい形だと思われます。
ただ、少なくともこの時期はリア充の割合のほうが我々より多いでしょうね。つまり消失させてしまった場合人口の半分以上がいなくなってしまいます。経済は大混乱です。

ポイントについては昔からの伝統ですし、私は技術がないのに質問だけでどんどんポイントが上がっていってしまっていますがむしろ気に入っています。
どのぐらいこの掲示板にお世話になっていて、どれだけ自分が行動したかの指標になっていますし。
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: この掲示板について 【雑談】
返信数: 83
閲覧数: 14503

Re: この掲示板について 【雑談】

どうもどうも、Hiragi(GKUTH)です。(リア充爆発しろ) なんていうか、この掲示板も昔に比べるとずいぶん賑やかになりましたね~どちらの意味で取ってもらってもいいぐらい。 最近私自身の技術もちょーっとづつ向上していて、他の方々の質問やそれに対する答えなども理解できるようになってきた感じです。 wingさんの話にもありましたが、初心者な私らから見ると熟練者の方の回答を見てもちんぷんかんぷんでした。(私の質問に対する回答を理解するのに何時間もかかった記憶がある) いじわるしているようにも見えましたねぇ、回答の意味を理解できずにそのまま流れてしまったトピックもいっぱいあるかと思います。まぁ そ...
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: ジャンプ処理の実装方法
返信数: 1
閲覧数: 811

Re: ジャンプ処理の実装方法

「それっぽい」動きならば現実の物理法則に従わなくても、実装できます。
 物理法則にしたがうなら。ここのサイトより。
http://dixq.net/g/30.html
http://dixq.net/g/31.html
この2つのページにサンプルと詳しい解説が乗っているかと思います。

それっぽい動きでよければ、DxLibのサンプルページより
http://homepage2.nifty.com/natupaji/DxL ... am.html#N2
にソースがあります。

(なんか全部他のサイトに丸投げで申し訳ありません...)
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: 14歳からはじめるC言語わくわくゲームプログラミング教室 VS2013編
返信数: 5
閲覧数: 1556

Re: 14歳からはじめるC言語わくわくゲームプログラミング教室 VS2013編

その本を持ってるわけでもないし、Visual Studio Express2010 2008を持っているわけでもないですが、普通に使えるかと思います(DXライブラリは2008 2010対応)。
もちろんその本の中でVisual Studio 2013特有の機能を使用するような説明がなされていれば、それはできないでしょうが、コードを書く->実行するぐらいの事であれば
問題なくできるかと思います。
というか買っているのであれば質問する前に実際に試してみるべきではありませんか?
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: パーティ編成
返信数: 4
閲覧数: 775

Re: パーティ編成

1.23行目でグローバル変数にしているのはなぜでしょう? 2.Koukan関数がプロトタイプ宣言と実際の記述で大文字、小文字が違っています。 3.初期化がされていません、渡された値に対して代入を行う必要がありそうです。for文も意味を成していません。 4.Inpot関数においてそもそもループを通過しません。 5.Koukan関数においてそもそもループを通過しません。また、構造体の内容を無理やりintに入れようとしています。Character型の変数を用意するべきです。 6.Koukan関数においてint iは使用されていません。 7.Koukan関数においてaとbの要素指定が一つ分多いです。 ...
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: パーティ編成
返信数: 4
閲覧数: 775

Re: パーティ編成

えっと、フォーラムルールを見ましたか?
http://dixq.net/board/board.html

回答者が困る質問をほぼ網羅してしまっています。
http://dixq.net/board/board.html#trouble

#パッと見た感じですが、初期化すらされていないような...
そんなことはなかったようです、が...
by Hiragi(GKUTH)
4年前
フォーラム: C言語何でも質問掲示板
トピック: パーティ編成
返信数: 4
閲覧数: 775

Re: パーティ編成

とりあえず上に「フォーラムルールはこちら」というボタンがあるかと思いますので、そちらを一通り目を通してください。 なお、この掲示板は丸投げNGですので、現状できている部分の提示や、どこから理解していてどこから理解していないのかを提示してください。 加えて http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10138412570 のページでも同様の質問をされていますか? マルチポストの場合その旨を書くことになっていますのでよろしくお願いします。 で、質問についてですが、 「構造体へのポインタ」と「関数へのポインタ」と「配列へのポイン...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: BMP画像の表示
返信数: 8
閲覧数: 1427

Re: BMP画像の表示

しばらく反応がなかったので解決とさせていただきます。 問題の解決への御指摘、及び高速化への御指摘、ありがとうございました。 問題があったコードのみと、指摘してくださった二次配列の部分だけを投稿します。 BMPmgr.cpp /* BMPの手動なロード及び二値化、圧縮 解凍、表示を行うモジュール(?)               Hiragi */ #include "DxLib.h" #include "BMP.h" //描画するオブジェクトの量 static const int NUM = 2; //画像サイズ分の量のデータ確保 unsigned char data[TOTAL]; //オブ...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: C言語の''
返信数: 4
閲覧数: 950

Re: C言語の''

nullではありません。 '何か' で文字を表します。
また " 何か "で文字列を表します。''は何もないことを表します。
ダブルクォークテーションの場合、文字列として扱われるため、一文字だとしてもサイズとして2Byte(最後に\0が入る)として扱われますが、
シングルクォークテーションの場合、文字として扱われるため、1byteとなります。
なお、nullは\0なので、ダブルクォークテーションを用いて文字列をcharなどに代入した場合、最後の要素に自動的に\0が代入されます。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: アンリアルエンジンについて
返信数: 3
閲覧数: 891

Re: アンリアルエンジンについて

基本的に有料のエンジンです。
19$/monthと書かれていますので、大体月2000円からの利用となります。

このページ
に書かれていることから、現在Epicが認定している課程に在籍している場合のみ、
申し込みをすると無償で利用できるようです。(ただし学校からのコピーになる?)
ここに詳しいことがかかれています。(Epicの学生利用へのリンク)
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: [雑談]パソコンって分ける必要あるのですか?
返信数: 14
閲覧数: 2153

Re: [雑談]パソコンって分ける必要あるのですか?

特に分けてないですねー財産的にも。
化け物のようなスペックでなくても大抵のゲームは動いてくれますし、大体消費電力も
負荷に応じて変化するものでしょうし。
ただ最近はネットサーフィン用のサブ機がほしいなぁと思っているところです。

メインマシンの容量不足などはHDD増設などで対応できますし速度が低下してきても、
たまにクリーンインストールしたり、レジストリ掃除したり、或いはメモリ増設したり。
そんなんで十分に対応可能だと思いますね。

私の家も家族共用なので、どうしても家族が不要なツールバーとかインストールしてしまうんですけど、
それは自分で不必要だったらアンインストールとかしてますね。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: BMP画像の表示
返信数: 8
閲覧数: 1427

Re: BMP画像の表示

効率に関するアドバイスを一つ。 次のコードはどちらのほうが速いでしょうか。 #include <stdio.h> int main(void) { int i, x, y; static int pixel[40000][40000]; for (y = 0; y < 40000; ++y) { for (x = 0; x < 40000; ++x) { pixel[y][x] = 1; } } return 0; } #include <stdio.h> int main(void) { int i, x, y; static int pixel[40000][40000]; for (y...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: BMP画像の表示
返信数: 8
閲覧数: 1427

Re: BMP画像の表示

問題解決済みなんだよかった、と思ったのですが一つ気になりますのでお伝えしておきます。 BMP.cppの72行目ですが平均値を求めるのであればこのままでは正しくないです。 除算の優先順位が高いのでカッコで括るか変数に入れておかないと正しい結果が得られません。 if ( ( img->pixel[x][y].color[2] + img->pixel[x][y].color[1] + img->pixel[x][y].color[0] ) / 3 > BMP_BLACKORWHITE) { // 処理 } もしくは { int tmp = img->pixel[x][y].color[2] + ...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: BMP画像の表示
返信数: 8
閲覧数: 1427

Re: BMP画像の表示

>>h2so5
思いっきり終端位置を指定していますね...
なんで呼び出し時と仮宣言時とを同じにしたのだろうか。
それと高校生なのに英語力の無さがあらわになってしまっている。
変なミス、申し訳ありませんでした。

他にも様々指摘されるべき点があるかもしれないのでもう少しだけ解決とはせずに置いておくことにします。

BMP画像自体は無事に、しっかりと表示してくれています。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: BMP画像の表示
返信数: 8
閲覧数: 1427

BMP画像の表示

いつもお世話になっております。 今回は、BMP画像の表示について少し行き詰っている部分があるのでアドバイスなどを与えてくれれば幸いです。 環境 OS:Windows 8.1 Compiler:VC++ Library:DXライブラリ 今、プログラミングでの画像についての扱いなどで、折角だし簡易的な圧縮でも試してみようかと、初めに 手動によるBMP画像の読み込み、二値化やグレースケール化などを行っています。 とりあえず基本的にできたと思っていたのですが、表示が若干おかしくなってしまいます。 元の画像がコレ http://dixq.net/forum/gallery/image.php?album...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 東方シリーズのあれこれ[雑談]
返信数: 9
閲覧数: 1950

Re: 東方シリーズのあれこれ[雑談]

>>d3dx9_43.dllが無いため、起動できません、みたいなことが出てきたのですが、

>>d3dx9_43.dllとは、Direct Xのことでしょうか?


DirectXの最新のランタイムを適当に探してきてインストールしてください
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 行けない場所の判定
返信数: 7
閲覧数: 1516

Re: 行けない場所の判定

とりあえずフォーラムルールを見ましょう。
最低限ソースコードを公開しないと回答できません。
そもそも一次元的なマップなど殆ど無いので通常は2次元配列を使うべきだと思うのですが...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 東方シリーズのあれこれ[雑談]
返信数: 9
閲覧数: 1950

Re: 東方シリーズのあれこれ[雑談]

輝針城になって少し要求スペックが上がってますが化石級GPUやCPUで無い限り動くでしょう、というか体験版 で十分にわかります。 >>DirectX 9では動作しないのか? バージョンによると思います。動かなければ最新版のランタイムをインストールするだけです >>CPUはどんなものが良いのか   最近のもので有ればよっぽどで無い限りどんなものでも動くでしょう。 >>ビデオカード、サウンドカードって何か?またそれは必要なのか   どちらも検索に掛ければ出てきますが、それらは必要というか、大体はCPUに内蔵されているかマザーボードに内蔵されています。   どのようなモノが搭載されているかはdxdia...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: シューティング制作についての質問です(その2)
返信数: 3
閲覧数: 894

Re: シューティング制作についての質問です(その2)

>>・経過時間を毎フレーム監視する.
自作関数のカウント関数がどのようなモノなのかわかりませんが、適当にカウンタを用意してフレームごとにイクリメントしていけば経過フレームが分かります。

・既に倒した敵の数を毎フレーム監視する.
HPが0になった時に敵を消すことができているのであれば、敵が消えるごとに値を足すような処理をすればいいかと思います。

>>時間切れでゲームオーバー、時間内に敵を殲滅でクリアにしたいです。
経過時間 > 設定した時間  でゲームオーバー
敵の殲滅数 == 出現する敵の数 でクリア

のようにすればいいのでは?
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 龍神録のタイトル画面について
返信数: 1
閲覧数: 488

Re: 龍神録のタイトル画面について

こちらこのページ(メニュー画面の作り方)あたりから読み進めると実現できそうです。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: エラーが出て実行されない(龍神録プログラミングの館を進行中)
返信数: 2
閲覧数: 472

Re: エラーが出て実行されない(龍神録プログラミングの館を進行中)

struct.h 4行目にタイプミスです。
変数が宣言されてない、とか、ありませんなどというエラーが出た時はそれを宣言している場所を探し、
そこを修正するとよいでしょう。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: C++で関数を実行するには?
返信数: 8
閲覧数: 874

Re: C++で関数を実行するには?

最後に
getchar();
などと書いてあげると動作は一時停止出来ると思います。
stdio.h をインクルードしてあげる必要があります。(動いちゃうかもしれない)

p.s.みけさんと少しかぶってしまった、コンソールウィンドウが勝手に閉じてしまうことを言っているのであれば上記の方法でウィンドウ破棄せずに待機させることが出来ると思います。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: C++で関数を実行するには?
返信数: 8
閲覧数: 874

Re: C++で関数を実行するには?

質問するときはエラーコードなどを貼るべきです。上手く実行できませんではあまり回答もしてくれないでしょう、
とりあえずフォーラムルールがあるので目を通してきましょう。
http://dixq.net/board/board.html

そして4行目にセミコロンが足りないのと、関数の型がvoidなので返り値を返す必要はありません。(5行目が不要)
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 譜面について
返信数: 2
閲覧数: 409

Re: 譜面について

http://dixq.net/sm/d1.html
ココには
>譜面はdatフォルダの中のhumen.txtです。
>
>0が空白、1が赤弾、2が青弾です。1スペースは32分音譜1つ分です。
>
>スペースと改行は読み飛ばします。

と書かれていますが、
コレでは不足してるんでしょうか?
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: サンプルプログラムが実行できません
返信数: 6
閲覧数: 1035

Re: サンプルプログラムが実行できません

>>warning C4244: '引数' : 'float' から 'int' への変換です。データが失われる可能性があります。 は、float型から強制的にint型に変換(っぽい)するということです。 DrawGraphは描画する座標をintとして受け取るので、int型にしてやらないといけません。 てわけで小数点以下を切り捨てるときに精度が落ちるよ的な警告を発しているのだと思います。 このコードの場合あまり影響ないと思います。特に本が悪いとか言うことではありません。 ちなみにDrawGraphFは隠し関数でリファレンスには載っていません。 小数点を含む座標を渡すと少し補完して綺麗に描画して...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 助けてください
返信数: 7
閲覧数: 3748

Re: 助けてください

10行目に型名が書かれていません。
char* かstringを使うんですかね?
31行目のif文にセミコロンがついていますが問題ありませんか?
というか色々なif文に不要と思われるセミコロンがついています。
無効(あまり意味が無い)if文が有りますけど何をしたいんでしょう?
条件式も色々間違ってます = ではなく == でしょう。
インデントも崩れています。

...と、ひと通り見ましたがCの文法とは全く違う書き方をしている部分がたくさん有りますがそのコードはご自分で書かれたものですか?

追記:既にみけCATさんが回答されているようなので、そちらを見たほうがいいかと思います。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: じゃんけんゲームを作っているのですが・・
返信数: 18
閲覧数: 1694

Re: じゃんけんゲームを作っているのですが・・

すいません。 解決したのにかかわらず少しだけ突っ込みたい所があるので、書き込ませてもらいます。 まず if( b == 0 ) { b = 1; } にはなんの意味があるのですか?1フレーム目だけココを通過させる理由がありますか? 加えて折角 int Col = GetColor(255,255,255); と色を作っているのに DrawFormatString( 0, 0, GetColor(255,255,255), "「ジャンケン!」"); DrawFormatString( 0,20, GetColor(255,255,255), "あなたの手を入力して下さい(グー:1 チョキ:2 パ...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: じゃんけんゲームを作っているのですが・・
返信数: 18
閲覧数: 1694

Re: じゃんけんゲームを作っているのですが・・

コード:

int score0, score1, score2,
となっていてセミコロンが抜けています。
オフトピック
追記:
それに加えて前回のトピックにて解決後には解決したソースコードを貼ることになっているので、よろしくお願いします。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリが一瞬で消えます
返信数: 134
閲覧数: 7942

Re: DXライブラリが一瞬で消えます

とりあえずif文の中には条件式を書いてあげましょう。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: aの初期化がcaseラベルによって行われませんでしたとは?
返信数: 19
閲覧数: 6984

Re: aの初期化がcaseラベルによって行われませんでしたとは?

>>かずまさん >>ISLeさん すいません。私自身あまり変数について詳しくない(寿命、スコープの違いなど)まま、回答してしまいました。勘違いを指摘してくださってありがとうございます。 ネットでの情報を自分に都合よく解釈してしまっていたようです。回答者という立場上、質問に対しての回答には自身を持てるモノを持つべきだと思いました。 私自身まだプログラミングについてそれほど経験が無い、という中で感情的な部分だけで書き込みをしてしまったことに対して情けないと思います。 この掲示板の有り方については私が言うことでは無いでしょうが、回答者側が問題であるという考え方に気づいていませんでした。 この掲示板が...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: コンソール入力と時間待ち
返信数: 6
閲覧数: 1457

Re: コンソール入力と時間待ち

ゲーム開始 -> 5秒待機 -> 次の動作へ を
ゲーム開始 -> 5秒待機 -> 特定の文字が入力されるまで待機 -> 次の動作へ

と変更すればいいと思いますが具体的にどこがどのようにわからないのか教えてくれないと回答の
正確性も落ちますし抽象的なモノになります。
とりあえず現時点でのソースコードを貼りましょう。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリでシーンを切り替える方法を教えてください
返信数: 18
閲覧数: 1902

Re: DXライブラリでシーンを切り替える方法を教えてください

今現在の私と同じ感じの人だなぁと思ったので私の意見も今更ながら書き込ませてもらいます。 素質がないな、とか周りが凄すぎて本当に自分はそんなことができるようになるのだろうか、とか、 気にしてはいけません^^ 焦らずにゆっくりとやっていけばいいのです。全然わからなくなることなどしょっちゅうあるのでそうなったらプログラミングを投げ出しましょう← 投げ出したらまたいつかふとやりたくなってくるものです。そんでまた自分でやりたいことができたら(勉強を捨てて)頑張って作ってみて、調べて、何度も試行錯誤してみましょう、 ダメだったらまたソレを破棄してプログラミングを投げ出しましょう← そんな繰り返しでも全然問...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 床?の当たり判定
返信数: 33
閲覧数: 5141

Re: 床?の当たり判定

ソフトではなくライブラリです。具体的に言うと導入して #include <Siv3D.hpp>などとして使用します。
DxLibと同じようなモノですがDxLibと併用するのは....どうなんでしょう、Siv3D自体、DxLibと同じぐらい強力なライブラリ(3Dを除く)だと思いますが、
完全にC++の書き方ですので慣れていなかったりするのであればDxLibのまま他の方法を考えるほうが良いと思います。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 突然ですが
返信数: 2
閲覧数: 394

Re: 突然ですが

C++の標準ライブラリであるiostreamであれば
std::coutでコンソールへの出力
std::cinでコンソールからの入力
です。
というかそれは関数ではないと思いますが
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: aの初期化がcaseラベルによって行われませんでしたとは?
返信数: 19
閲覧数: 6984

Re: aの初期化がcaseラベルによって行われませんでしたとは?

softya(ソフト屋)さんの回答は こちらの質問がまったく伝わっていないのかな?と 思ってしまいますが、違いますか? caseってbreak;が無いと下の処理に流れたりしますよね。 すみません、この発言の意図がわかりません。 自分の記載したcaseのソースでも別にそこの対処は出来てますよね? break記載してないと処理が流れるのは知ってるんですけど、、、、 先のなにかにかけて話したのでしょうか?それならそれでいいのですが こちらは読み取れませんでした。 (ちなみに、breakを書かずにわざと次のブロックの処理も行わせる方法も 使う人は使いますから、caseのbreakって必須じゃ無いはず...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 床?の当たり判定
返信数: 33
閲覧数: 5141

Re: 床?の当たり判定

なんか宣伝みたいですけど、画像から当たり判定を自動的に生成してくれる(2Dポリゴン)ライブラリがあります。さらにそれらとの接触、中にある外にあるなど
円とソレ以外との当たり判定もほぼ自動的に行なってくれるクラスなども用意されています。(めり込みに関しては工夫が必要)
http://play-siv3d.hateblo.jp/entry/exam ... eToPolygon
http://play-siv3d.hateblo.jp/entry/tuto ... tersection
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: for文の使用
返信数: 15
閲覧数: 1292

Re: for文の使用

20発打ち切る前に玉が画面外に出て、フラグが折られるので20発打ち切ったら出す玉がなくなることはありません。

リンク先より
>発射する弾の数ですが、一画面中に何弾発射してればよいかという視点から考えます。
>画面中に20発以上の弾が溢れることはないので、20発定義しておけば弾切れもないと思うので、
>20発定義することにします。
>player.hではこの弾構造体を20個配列として定義しています。

のように書いてあります。そのfor文は今現在のフレームでフラグが立っていない(まだ打たれていない)玉を捜索して
フラグを立てる(打つ)意味を持っています。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: C#のコンソールアプリケーションとDXLibでノベルゲームを作ってますが
返信数: 3
閲覧数: 1270

Re: C#のコンソールアプリケーションとDXLibでノベルゲームを作ってますが

DxLibには一応C#版が存在します(機械的に中身を変換しているだけのようですが。)
私はまだC#版DxLibを見ていないので分かりませんが、
質問者様がやりたいのはコンソールアプリケーションで、キーボード入力だけDxLibのモノを使いたいという事ではないでしょうか?
(ノベルゲーならば勿論画像の表示や音楽の再生が必要なのでコンソールで出来るとは思いませんが、)
そうでないとしてもキー入力された瞬間だけを判定するソースコードはこちらのサイトのモノからほんの少し変えるだけでいいと思いますが。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: [C/C++]上位の工程について
返信数: 37
閲覧数: 3025

Re: [C/C++]上位の工程について

h2so5さんが紹介した本は一応日本語に翻訳されたモノもあります。

とりあえず買っといて損のない本だと思いますが。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: Visual Studio 2010++
返信数: 2
閲覧数: 509

Re: Visual Studio 2010++

Gyazoとかいうスクショをとって共有できる奴がありますが、Linux版はRubyで動いていて、コードはわずか数10行だった気がします、
ライブラリなどを使えばかなり簡単に実装できると思います。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: カーソルの上下移動について
返信数: 6
閲覧数: 1410

Re: カーソルの上下移動について

移動範囲は普通にゲーム(?)の解像度に合わせて当たり判定をすればいいと思います。 
xが画面外(0<x<480)になったら..とかyが画面外(0<y<640)になったら...
カーソルの描画されている場所に合わせてスタートさせたり、操作方法の画面に移動させるといった処理だけ、というのが
具体的にどのようなものなのかわからないので答えづらいですが...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 「1.1章 DXライブラリが使える環境を整えよう」について
返信数: 8
閲覧数: 1180

Re: 「1.1章 DXライブラリが使える環境を整えよう」について

DXライブラリのバージョンがとても古いので、フルスクリーン時のデフォルトの色深度が16bitになっています。
DXライブラリを最新版に入れ替えてください
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 「1.1章 DXライブラリが使える環境を整えよう」について
返信数: 8
閲覧数: 1180

Re: 「1.1章 DXライブラリが使える環境を整えよう」について

仰るとおりフルスクリーンに切り替えられてないようです。
プロジェクトフォルダ下のLog.txtを貼っつけてもらうと原因がわかる「かも」しれません。

フルスクリーンに切り替えられない原因としてはディスプレイが640x480の解像度に対応してないとか、ディスプレイの設定が相応しくないであるとか、
デュアルディスプレイによる不具合もあるようです。

後はDXライブラリを最新版に更新するなど
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: お手上げです
返信数: 13
閲覧数: 1600

Re: お手上げです

そのコードは多分このサイト様の新・ゲームプログラミングの館にある3Dプログラミング 3d.1のプロジェクトをそのまま動かしているのだと思いますが、その場合
インクルードフォルダはプロジェクトフォルダ下にある(C:\Users\kobanao\Documents\3Dsample\DxLib\)と思うので、最新版を解凍したらそこにコピペしないといけないと思います。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: お手上げです
返信数: 13
閲覧数: 1600

Re: お手上げです

すいません、こちらでそのコードと同じものを動かしてみたところ、
Log.txtに同様のエラーが出るものの、普通に描画されました。
他の原因が考えられます。softyaさんの仰るように、ドライバやハードウェアが原因かもしれません。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: お手上げです
返信数: 13
閲覧数: 1600

Re: お手上げです

>>5108:Load Texture Error : カラーチャンネル画像ファイル C:\Users\kobanao\Documents\3Dsample\dat\Lat式ミク\toon01.bmp の読み込みに失敗しました >>5423:Load Texture Error : カラーチャンネル画像ファイル C:\Users\kobanao\Documents\3Dsample\dat\Lat式ミク\toon0.bmp の読み込みに失敗しました の部分じゃないでしょうか、MMDデータであるpmdファイルを開く時、それに関連するテクスチャなどは自動的に読み込まれます。 その中の幾つかが正常に...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: お手上げです
返信数: 13
閲覧数: 1600

Re: お手上げです

>>3Dsample.exe の 0x65bba1a8 でハンドルされていない例外が発生しました: 0xC0000005: 場所 0x685f621c を読み込み中にアクセス違反が発生しました。
エラーはのようなのが出ています

Log.txtが実行ファイルと同じ階層にできているはずなのでソレをそのまま全部はっつけましょう。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 構造体でエラーが発生します
返信数: 4
閲覧数: 2192

Re: 構造体でエラーが発生します

3行目です。 #defineで最後にセミコロン要りません。 #include <stdio.h> #define TEST 10; int main() { printf("%d\n", TEST); return 0; } エラー 1 error C2143: 構文エラー : ')' が ';' の前にありません。 e:\users\hiragi\documents\visual studio 2013\projects\cui\cui\main.cpp 7 1 CUI エラー 2 error C2059: 構文エラー : ')' e:\users\hiragi\documents\visu...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 敵を360°回転させる処理について
返信数: 9
閲覧数: 754

Re: 敵を360°回転させる処理について

DxLibであるということを前提に

softyaさんが貼ったURL先のリファレンス読めばとりあえず画像の回転は出来ます。
たまを斜めに発射するときとかも同等の処理で描画出来ると思いますが、発射したあとに斜めに移動させるためには三角関数を使う必要があります。
それもココの管理人様が投稿されている動画でわかりやすく解説されているのでそれを参考にしてみては?
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: linuxのキーボード同時押し
返信数: 7
閲覧数: 2008

Re: linuxのキーボード同時押し

以前SDLでのゲーム作成をしていた時に、ここの新・ゲームプログラミングの館のキー監視関数を参考にしてSDLで キー入力の監視をする関数を作成しました。(といってもまだ完全でない) #include <stdio.h> #include "SDL.h" int Key[SDLK_LAST]; // キーが押されているフレーム数を格納する int gpUpdateKey() { Uint8 *tmpKey; // 現在のキーの入力状態を格納する tmpKey = SDL_GetKeyState(NULL); SDL_PumpEvents(); for(int i=0; i < SDLK_LAST;...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 3Dゲームで重力で引っ張られるようになりたいのですが...
返信数: 9
閲覧数: 970

Re: 3Dゲームで重力で引っ張られるようになりたいのですが...

漠然と「こんな感じのゲーム」といっても簡単には作れません、もちろん僕にも3Dなどさわったことないのでできません、 ましてや中3の僕にすらジャンプの仕組みを完璧には理解できていません。 「ゲームが作りたい!」という意思と考えは大事ですが、そこに至るまでにさまざまなことを学ぶ必要があります。 物には順序があります。面白くないかもしれませんがもっと簡単なゲームを作ってみることからしてみたらどうでしょうか? 面白くないといっても実際に自分のコードがちゃんと動いたときは嬉しいものです。(僕の場合ですが) まだ小4ですしそんなに焦らない(=いきなり難しいものをしようとしない)ほうがいいとおもいますよ? そ...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 3Dゲームで重力で引っ張られるようになりたいのですが...
返信数: 9
閲覧数: 970

Re: 3Dゲームで重力で引っ張られるようになりたいのですが...

3Dゲームでやるよりひとまず2Dでやってみましたか?
ここのサイトでも重力の表現については解説がありますのでそこを見ながら2Dでの重力表現のしくみとかを知ったほうがいいですよ。

それともうひとつ、丸投げは禁止です。

ジャンプとかの考え方に関しては
http://dixq.net/g/30.html とか
http://dixq.net/g/31.html を見るといいですよ
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 一番最初がうまくいきません。
返信数: 13
閲覧数: 2338

Re: 一番最初がうまくいきません。

1.プロジェクトをダウンロードしなおして、もう一度解凍してみてプロジェクトもロードしなおしてください、
2.そのプロジェクトの位置は日本語(2バイト)などの文字が含まれて居ませんか? 含まれているのであれば日本語が含まれていない
ディレクトリに移動させてからもう一度プロジェクトを開いてみてください。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: ■ 新年の挨拶トピック~2014~ ■ 今年の抱負 ■ [雑談]
返信数: 17
閲覧数: 2482

Re: ■ 新年の挨拶トピック~2014~ ■ 今年の抱負 ■ [雑談]

明けましておめでとうございます。 もう中学3年だったんでここに来ることも減っていたのですがなんだかんだで年越しは毎回ここのチャット部屋で過ごしている気がします。 とりあえず受験生だし高校合格して、そんでもってちょっと時間があるようになったらRustとかいうプログラミング言語を習得して、 で今年じゅうにまともなゲームをひとつ創りあげたいと思います。 もちろんDXライブラリとかもいいかなーとも思うんですけどやはりそういうライブラリに頼らないゲーム(STG)を作りたいな、と BGMからSE,絵からプログラムまで全て自分で作ってゲーム作りたいなーと、 とりあえず受験合格しなきゃいけないんで勉強しないと...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 新・ゲームプログラミングの館2.9の関数のSDL化
返信数: 17
閲覧数: 1345

Re: 新・ゲームプログラミングの館2.9の関数のSDL化

気付いていませんでした...
Key[SDLK_LAST];
にすれば今度こそ大丈夫なはず・・・!
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 新・ゲームプログラミングの館2.9の関数のSDL化
返信数: 17
閲覧数: 1345

Re: 新・ゲームプログラミングの館2.9の関数のSDL化

返信遅れてすいません。 条件式を for(int i=0; i <= SDLK_LAST; i++ ) から for(int i=0; i < SDLK_LAST; i++) に変更しました。 また、配列の宣言も Key[SDLK_LAST - 1]; に変更しました、が相変わらず領域外にアクセスできてしまいます(もちろんKey[X]の部分に値を直接入力した時のみですが)。 しかし、この時点でかなり元の質問から離れてしまっていて現時点でちゃんと動作するので、このトピックは終了しようと思います。 この問題はまた別の機会に別のトピックで解決しようと思います。 答えて下さった方々、ありがとうございま...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 新・ゲームプログラミングの館2.9の関数のSDL化
返信数: 17
閲覧数: 1345

Re: 新・ゲームプログラミングの館2.9の関数のSDL化

SDLが返すtmpKeyの要素は512も無いのであいかわらず領域外をアクセスしますよ。 SDL_keysym.hによると要素数としてSDLK_LASTが使えます。 SDLK_LASTをどこかで作られた定数だと仮定して、tmpKeyのアクセス領域をSDLK_LASTを「含まない」それ以下にし、Keyも要素を SDLK_LAST(=323)個にして組み直しました。 ご指摘ありがとうございました。 以下、解決後のソース #include <stdio.h> #include "SDL/SDL.h" #include "SDL/SDL_image.h" int Key[SDLK_LAST]; // ...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 新・ゲームプログラミングの館2.9の関数のSDL化
返信数: 17
閲覧数: 1345

Re: 新・ゲームプログラミングの館2.9の関数のSDL化

Keyの要素数が256のままなので、確保された領域の外にアクセスすることになり、危険です。 単純に要素数を512に増やしました。 #include <stdio.h> #include "SDL/SDL.h" #include "SDL/SDL_image.h" int Key[512]; // キーが押されているフレーム数を格納する // キーの入力状態を更新する int gpUpdateKey(){ Uint8 *tmpKey; // 現在のキーの入力状態を格納する tmpKey = SDL_GetKeyState(NULL); SDL_PumpEvents(); for(int i=0...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 新・ゲームプログラミングの館2.9の関数のSDL化
返信数: 17
閲覧数: 1345

Re: 新・ゲームプログラミングの館2.9の関数のSDL化

SDLK_UPが256を超えている可能性があります。 自分の環境ではSDL_GetKeyState関数に渡したポインタに入った要素数が323、 SDLK_UPが273、SDLK_DOWNが274でした。 どうやら自分がascii範囲に全て入っているものだと思い込んでいました。範囲を256から512に変更した結果 動作したのでコレで解決とします。 ありがとうございました。 コード貼るの忘れていました。 #include <stdio.h> #include "SDL/SDL.h" #include "SDL/SDL_image.h" int Key[256]; // キーが押されているフレーム...
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 新・ゲームプログラミングの館2.9の関数のSDL化
返信数: 17
閲覧数: 1345

Re: 新・ゲームプログラミングの館2.9の関数のSDL化

みけCAT さんが書きました:SDLK_UPが256を超えている可能性があります。
自分の環境ではSDL_GetKeyState関数に渡したポインタに入った要素数が323、
SDLK_UPが273、SDLK_DOWNが274でした。

どうやら自分がascii範囲に全て入っているものだと思い込んでいました。範囲を256から512に変更した結果
動作したのでコレで解決とします。
ありがとうございました。
by Hiragi(GKUTH)
5年前
フォーラム: C言語何でも質問掲示板
トピック: 新・ゲームプログラミングの館2.9の関数のSDL化
返信数: 17
閲覧数: 1345

Re: 新・ゲームプログラミングの館2.9の関数のSDL化

SDL_GetKeyStateから返されるポインタを配列として見たときのSDLK_*番目の要素が、 対応するキーが押されていたら真、押されていなかったら偽になるようです。 ...まだわかりません、まずキーの状態が戻り値として帰ってくることがわかったので int Key[256]; // キーが押されているフレーム数を格納する // キーの入力状態を更新する int gpUpdateKey(){ Uint8 *tmpKey; // 現在のキーの入力状態を格納する tmpKey = SDL_GetKeyState(NULL); SDL_PumpEvents(); for( int i=0; i<...

詳細検索ページへ移動する