[表示 : 全て 最新50 1-99 2chのread.cgiへ]
Update time : 01/20 11:55 / Filesize : 23 KB / Number-of Response : 86
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C/C++ゲーム製作総合スレッド Part3



1 名前:名前は開発中のものです。 mailto:sage [2013/01/11(金) 19:10:40.87 ID:xdIUMDA+]
ゲーム製作におけるC/C++全般に関するスレです。

元スレ
DXライブラリ 総合スレッド その12
toro.2ch.net/test/read.cgi/gamedev/1330000532/

前スレ
C/C++ゲーム製作総合スレッド Part1
toro.2ch.net/test/read.cgi/gamedev/1337516528/
C/C++ゲーム製作総合スレッド Part2
toro.2ch.net/test/read.cgi/gamedev/1351015269/

19 名前:名前は開発中のものです。 mailto:sage [2013/01/12(土) 22:58:33.88 ID:TAdoT1my]
実行ファイルの更新したい場合ってどうすんの?

20 名前:名前は開発中のものです。 mailto:sage [2013/01/12(土) 23:12:20.43 ID:Q2O9dlnY]
>>19
幾つかパターンはあるようだが、その一例を挙げると

(1)アプリケーション本体の実行ファイル(本体.exe)とは別に、本体.exeを起動して終了するだけの 実行.exe を用意する。
(2)ユーザが 実行.exe を起動する。
(3)実行.exeは最新版をチェックしてダウンロード。一時ディレクトリ update/ に置く。
(4)update/にある差分のうち、自分自身(実行.exe)以外のデータを更新する。単純な上書きでもいい。
(5)本体.exeを起動し、自身を終了させる。
(6)update/に 実行.exe の差分があれば更新。
(7)ゲーム画面へ。

こんな感じ。

21 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 00:05:45.40 ID:dL2ucEoK]
一つ一つ考えていけば難しいことがないように思えるね。
アップデートするデータはSkydriveとかにおいてできるのかな。
アップデート失敗したら手動上書きでやってもらうことも出来れば助かるな。

22 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 00:16:49.11 ID:QYqOR8Li]
そういうストレージサービスをシステムに勝手に組み込むのってアリなのかな?
サーバ機能を提供してるわけじゃないから怒られそうw

23 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 04:58:47.24 ID:xiYKJRHb]
>>20
googleが1秒以内に検索結果を出してくるネット上で「そんなの知ってた」の後出しか…
ここまでの馬鹿は初めて見た

24 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 09:23:40.55 ID:q2QWbCyo]
「『ググれ』で追い返せよ」で済むことを
ここまで汚い言い回しにすることができるのか
ある意味感動ものだわ
ここまでのバカは初めて見た

25 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 13:47:08.32 ID:4cUok40X]
とりあえず嫌味言おうとするのは何とかならんのかおまえら

26 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 13:52:41.73 ID:ELVO7BEX]
せやな
人間関係悪くするだけでっしゃろ
いづれ己にも返ってくっとばい

27 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 16:38:18.62 ID:DnogiF6f]
そもそも20のどこに後出し要素があったのか…



28 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 16:56:35.80 ID:i9DRXkqW]
12からの流れはそう見える

29 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 17:08:50.06 ID:DnogiF6f]
そうか、それは失礼した。

30 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 20:38:41.30 ID:r7Z90TkB]
>>18
同人か。通信対応の作品がたまーにパッチの自動取得(適用)機能搭載してるね
実際にやるサークルが少ない(or搭載したい機能としてあまり話題にならない)のは
ゲームにとってはやっぱり枝葉の部分だからってのが一番大きいかもねぇ
(>>15で書いたような懸念も絡んでくると組み込む意欲下がるしね)

個人的には、p2p(BitTorrent)で自分のゲームが同人ソフト詰め合わせzipの中に
あるのがたまにムカついてて、不正使用防止(主に中華対策)のためにゲーム内容に
何らかの通信要素を盛り込んでユーザー認証ありの常時接続必須の仕組みにして
パッチもログイン状態でないと入手不可みたいにしたいなーとかたまに考えるけど
運用コスト考えるとどうしても二の足を踏むんだよね

>>21,22
利用規約よく読んでから使えばいいと思うよ。API公開されてるんだしさ

31 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 21:01:23.96 ID:Av2ygObS]
中華対策なら、禁止ワード入れとけば良いんじゃね?

32 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 21:16:14.11 ID:H+lKOq2B]
邪悪江沢民とか?んー、狙い撃ちしてると露骨に分かると逆恨みされそうだしなぁw

33 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 21:46:43.32 ID:dL2ucEoK]
p2pネットワークに更新データ放流してサーバー無しで自動更新サービス運営ってできるのかな?
p2pよくわかってないけど

34 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 22:00:01.75 ID:DnogiF6f]
>>33
かつてWinnyだったかが、クライアントのバージョン情報も一緒に流すようにしていて、
P2Pネットワーク上で新バージョンを見つけたら、ユーザに更新を促すという仕組みをとっていたと聞いたことがある。

実際の更新データは、流石にウェブからDLだったと思うけれど。

35 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 22:15:46.84 ID:r7Z90TkB]
>>33
そろそろ学習しような

36 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 22:19:18.47 ID:CeZSCTsQ]
怒っていいぞ

37 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 22:51:06.66 ID:b51sZUkj]
p2pで共有してもファイルが正当なものかチェックする機能は最低限必要だし
サーバなしってわけにはいかんのじゃないかな



38 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 23:57:31.03 ID:r7Z90TkB]
・配信の制御ができるのか。何らかのミスで配信停止したくてもできないとしたら?
・人気のない(マイナーな)ファイルとP2Pネットワークの組み合わせは適切なのか?
・ゲームプログラムに名の知れたP2Pネットワーク(仮にBitTorrentとしようか)の
クライアント機能を組み込むとして、それはユーザーが望む結果になるのか?

39 名前:名前は開発中のものです。 mailto:sage [2013/01/13(日) 23:59:08.50 ID:r7Z90TkB]
例えばBitTorrentクライアント機能を搭載するとして、それが活性状態になる事で
生じる副作用、色々あるよね。昨今のISPが実施してるDPIによる帯域制御に
ひっかかったりしたらユーザーは普通にブチギレると思うんだよね。だいたい
知らん間に勝手にP2PネットワークのピアPCにされてるんだから、そらもう
「何これキモ杉」って思われて2ちゃんに晒されちゃうと思うよ

40 名前:名前は開発中のものです。 mailto:sage [2013/01/14(月) 19:19:19.41 ID:/Klf/M/O]
MacOSのゲームをWindows用に移植できる技術を持った人いますか?
頼みたいことがあります

41 名前:名前は開発中のものです。 mailto:sage [2013/01/14(月) 20:18:52.59 ID:eegFuPl4]
予算は何百万から?

42 名前:名前は開発中のものです。 mailto:sage [2013/01/14(月) 20:21:20.33 ID:49R1DSKh]
>>40
スレ違い

依頼はここでよろしく

総合発表&雑談スレッド その3
toro.2ch.net/test/read.cgi/gamedev/1216633635/


一緒に作る人の募集ならここでよろしく

ゲーム製作メンバー募集スレ 13人目
toro.2ch.net/test/read.cgi/gamedev/1308155404/

43 名前:名前は開発中のものです。 mailto:sage [2013/01/14(月) 20:27:15.17 ID:/Klf/M/O]
>>41
予算考えます

www.amazon.co.jp/%E3%82%B2%E3%83%BC%E3%83%A0%E9%96%8B%E7%99%BA%E8%80%85%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AEAI%E5%85%A5%E9%96%80-David-M-Bourg/dp/4873112168/ref=sr_1_1?s=books&ie=UTF8&qid=1358162642&sr=1-1

ゲーム開発者のためのAI入門 [大型本]
の著者 David M. Bourg、Glenn Seemannが作ったゲームです

どうにかしてWindowsに移植してほしいです
フォーラム等ではWindows版を望む書き込みが多数あります

私がGMとGlenn Seemannに問い合わせるので移植を手伝える人はいませんか?
お願いです

44 名前:名前は開発中のものです。 mailto:sage [2013/01/14(月) 20:28:01.03 ID:qmV0FD8r]
>>42が読めないのかよ。

45 名前:名前は開発中のものです。 mailto:sage [2013/01/14(月) 20:33:30.62 ID:/Klf/M/O]
フォーラムはここです
www.oberin.com/index.php?name=PNphpBB2&file=viewtopic&p=70004&newlang=eng

ゲームはObeirnというゲームです
UO風のゲームです
Macでしか動きませんWindowsでも動くようにしてほしいです

古くからMacプログラミングに知識ある人、ゲームプログラマーの方
移植してくださいお願いです

46 名前:名前は開発中のものです。 mailto:sage [2013/01/14(月) 21:06:48.45 ID:yDWTFFjN]
話が通じない(話を聞かない)人間なんだなぁ、という事はよく伝わってくる

47 名前:名前は開発中のものです。 mailto:sage [2013/01/14(月) 21:43:05.60 ID:laeS6h7o]
人の言葉らしき文字列を自動投稿するスクリプトでしょ



48 名前:名前は開発中のものです。 mailto:sage [2013/01/14(月) 22:16:19.17 ID:tFGS7qey]
多分C++で書かれたWindowsプログラムに違いない。

49 名前:名前は開発中のものです。 mailto:sage [2013/01/15(火) 00:01:09.21 ID:LJeU0WyS]
移植してください
頼みますよ
リメイクでもいいです

50 名前:名前は開発中のものです。 mailto:sage [2013/01/15(火) 07:09:20.45 ID:QGB3gtfA]
そもそもMacで使われてるC言語はObjective-Cであって、C++とは別物なんだがな
WindowsからMacへ移行し、会社も移籍となるとなかなか難しいだろうな

51 名前:名前は開発中のものです。 mailto:sage [2013/01/15(火) 08:36:57.26 ID:kOXRI1LA]
XCodeでもC/C++のコンパイルは出来るよ。
ただし、ウィンドウのハンドルを取る手続きはObjective-Cじゃないと資料が見当たらなかった。
システムAPIはObjective-Cに特化している印象。

52 名前:名前は開発中のものです。 mailto:sage [2013/01/15(火) 08:47:21.82 ID:5Gk8HxPx]
>>50
たぶんCで作られてると思います
OS9の時代なので古いゲームです
画像を表示するのにもQuickDrawを使ってます

OSX10.7からRosettaがなくなってPPCのOberinは動かなくなりました
古くからMacを使いウルティマオンライン風の2Dオンラインゲーム開発を熟知してるゲームプログラマーの方お願いです
Oberinを救ってくださいDavid M. Bourg、Glenn Seemannに問い合わせて共同開発してリメイクしてくださいお願いです

53 名前:名前は開発中のものです。 mailto:sage [2013/01/15(火) 08:56:17.26 ID:5Gk8HxPx]
こんなUIです
oberin.s7.xrea.com/kiso/guide017/gfx/screenshotfull.jpg

OSX版もあります、どうかWindowsに移植してほしいです
移植してくれる人を集めるとしたらどこで協力を得ればいいでしょうか?
ゲームプログラマを尋ねるしかありませんか?

54 名前:名前は開発中のものです。 mailto:sage [2013/01/15(火) 09:10:55.46 ID:IZNDRoVN]
他人任せにしないでください。
あなたが権利者から許可を取り、プロデューサ/ディレクタ/プロジェクトマネージャになるべきです。
その上で、開発チームを立ち上げてください。

55 名前:名前は開発中のものです。 mailto:sage [2013/01/15(火) 09:18:13.17 ID:wGE6oIEa]
他人任せで成功したプロジェクトなんて聞いた事がない。
自分が中心になって製作するサークルでも9割以上が潰れると言うのに。
レスすらまともに読む気ないのに協力してもらえるなんて、どういう思考回路してるんだ?
いい加減しつこい。諦めてmac買えよ。中古なら安く買えるだろ。

56 名前:名前は開発中のものです。 mailto:sage [2013/01/15(火) 13:20:24.05 ID:m8SuNQuJ]
>>45興味深い

57 名前:名前は開発中のものです。 mailto:sage [2013/01/15(火) 17:12:30.95 ID:EaLBtD+u]
>>50-51
みたいに相手するから余計につけあがる。
責任取って他スレに誘導しろよ。



58 名前:名前は開発中のものです。 mailto:sage [2013/01/15(火) 18:09:01.38 ID:QGB3gtfA]
Macでゲームを作るスレ(2)
toro.2ch.net/test/read.cgi/gamedev/1103361042/

59 名前:名前は開発中のものです。 mailto:sage [2013/01/15(火) 23:30:08.02 ID:kzHVNOI7]
>>55
おそらく中古MACを買う予算より少ない金額で「仕事の依頼です!」とか言いそうで、
プログラミングできる人間側にしたら好きになる要素がないよねw

60 名前:名前は開発中のものです。 mailto:sage [2013/01/15(火) 23:37:08.24 ID:wUrDSvN+]
2chでプログラマ探してる時点でろくなもんじゃない

61 名前:名前は開発中のものです。 mailto:sage [2013/01/16(水) 12:14:56.86 ID:dZqwRO7Z]
QuickDrawって廃止されてQuartz 2Dだよね。
たぶんMacのQuartz 2D使ってゲーム作れるレベルの高い人は日本にいないから移植も無理だろ。

62 名前:名前は開発中のものです。 mailto:sage [2013/01/16(水) 12:16:31.82 ID:dZqwRO7Z]
洋書有利だな。

63 名前:名前は開発中のものです。 mailto:sage [2013/01/16(水) 12:27:05.31 ID:9GgZijAJ]
どうして Windows に nanosleep が無いことを考えるとイラついてくるな

64 名前:名前は開発中のものです。 mailto:sage [2013/01/16(水) 14:19:38.79 ID:9saeUya9]
>>61
ゲーム作るんならグラフィクスはOpenGLじゃないの

65 名前:名前は開発中のものです。 mailto:sage [2013/01/16(水) 17:11:29.45 ID:rfcXvvp9]
2Dゲーならそこまで低レベルAPIに落ちなくてもいい。

ていうか面倒ごとが増えるから落ちずに済むならそれに越した事は無い。

66 名前:名前は開発中のものです。 mailto:sage [2013/01/16(水) 18:51:41.63 ID:u7MUGbEN]
つまりDXライブラリ最強ってことですね

67 名前:名前は開発中のものです。 mailto:sage [2013/01/16(水) 19:32:52.73 ID:Yd8Vz7lO]
#include <iostream>
#include <map>

class A{
public:
int val;
};

int main(){
std::map<int, A> Main_A;
std::map<int, A> Sub_A;

Sub_A.insert(std::make_pair(1, A()));
Sub_A.insert(std::make_pair(5, A()));
Sub_A[1].val = 100;
Sub_A[5].val = 50;

//Main_AにSub_Aの要素をinsertしたい

std::cout << Sub_A[1].val << std::endl;
std::cout << Sub_A[5].val << std::endl;

return 0;
}

mapから他のmapに要素をinsertするといったことは可能なのでしょうか?
イテレータとかいうやつを使うのでしょうか?



68 名前:名前は開発中のものです。 mailto:sage [2013/01/16(水) 19:43:47.57 ID:vHhR3ta5]
何をしたいかいまいち良く分からんが、
STLコンテナの類で全要素にアクセスするなら
イテレータ使うのがよろしい。
C++初心者にはキモイ構文かも知れんが、
まぁサンプル通りのコーディングすれば良し。

69 名前:名前は開発中のものです。 mailto:sage [2013/01/16(水) 23:25:51.98 ID:uIyKClGc]
イテレータ慣れると[]演算子でアクセスする方が気持ち悪くなってくるね

70 名前:名前は開発中のものです。 mailto:sage [2013/01/17(木) 22:34:40.20 ID:yNq2XjTR]
ムーブコンストラクタで無用なコピーを防ぐとか、そういう話かと

71 名前:名前は開発中のものです。 mailto:sage [2013/01/17(木) 22:47:58.36 ID:SK+WC+I6]
>>69
用途が違くね?
[]演算子ならどこでも一瞬でアクセスできるじゃん。

72 名前:名前は開発中のものです。 mailto:sage [2013/01/17(木) 23:59:25.21 ID:QQuSP+8l]
>>71
mapの場合は絶対にキーが格納済みであることが確実でもfind使うようにしてる
それとはまた違うがvectorもatがあるから[]は使ってないなあ

73 名前:名前は開発中のものです。 mailto:sage [2013/01/18(金) 00:50:51.69 ID:0xoMQDl+]
Vectorでatは毎回範囲チェックするから遅くなるだろ
ある程度連続してアクセスするなら無駄

74 名前:名前は開発中のものです。 mailto:sage [2013/01/18(金) 04:22:15.56 ID:6OYOcstc]
>>72
さすがにそれはどうかと思う

75 名前:名前は開発中のものです。 mailto:sage [2013/01/18(金) 21:17:01.14 ID:h30YIVHQ]
>>70
>>67の内容から察するにその辺の話だと俺も思うなぁ
C++11 std map pair move-semantics move-constructor move-assignment-operator
とかでググると>>67のやりたい事と一致する情報が色々拾える気がする

76 名前:名前は開発中のものです。 mailto:sage [2013/01/18(金) 22:19:03.33 ID:6FSUVQjN]
アルゴリズムでcopy一発じゃないの?

77 名前:名前は開発中のものです。 mailto:sage [2013/01/19(土) 12:36:02.05 ID:q8h4iJfZ]
DXライブラリでゲームのセーブ及びロード関係なんですが
fopenやfwriteではint型やchar型のデータは読み書きできると思うんですが
クラスなどのオブジェクトまるまる保存するにはどのような関数があるのでしょうか?
参考に出来るサイトなんかでもなんでもいいのでお願いします。



78 名前:名前は開発中のものです。 mailto:sage [2013/01/19(土) 13:49:54.50 ID:BIw3jTiL]
オブジェクトを保存できるような形式にすることを「シリアライズ」というが
DXライブラリとしてはシリアライズは提供してなかった、はず。
C++としても特にあるわけじゃない。
Boostではあるって聞いた。

データ形式が複雑じゃなければ自分で手でデータを並べてファイル出力。
structを一括とかすると若干見通しがいい。
余談だがこれには#pragma pack(1)とか非標準的な泥臭い話も若干出てくる。

79 名前:名前は開発中のものです。 mailto:sage [2013/01/19(土) 13:51:20.31 ID:tuSK099a]
boost::serializationで検索……と言いたいところだけど、
まずはstructか何かに必要なデータを纏めて、それを1つずつ順番にバイナリ出力するところから始めてみてはどうだろう

80 名前:79 mailto:sage [2013/01/19(土) 13:51:53.80 ID:tuSK099a]
あ、ごめん、リロってなかった

81 名前:名前は開発中のものです。 mailto:sage [2013/01/19(土) 15:03:13.68 ID:CuXnatAE]
>>77
クラスを読み書きするだけならこんな感じでどうでしょうか…

#include <iostream>
#include <fstream>
using namespace std;

struct Savedata{
int x, y, z;
};

int main(){
Savedata save; //オブジェクト
save.x = 1;save.y = 2;save.z = 3;
const char* filename = "sav.dat"; //ファイル名
ofstream out; //セーブ
out.open( filename );
out.write( ( const char* )&save, sizeof( Savedata ) );
out.close();
Savedata load; //ロード
ifstream in;
in.open( filename );
in.read( ( char* )&load, sizeof( Savedata ) );
in.close();
cout << load.x << load.y << load.z << endl; //確認
}

82 名前:名前は開発中のものです。 mailto:sage [2013/01/19(土) 15:15:11.83 ID:hcRANC3J]
ファミコンゲームのセーブロードがシリアライズとかしてたかよ
必要なデータを洗い出してセーブデータの構造を自分で考えろよ

83 名前:名前は開発中のものです。 mailto:sage [2013/01/19(土) 19:26:10.66 ID:tuSK099a]
ファミコンソフトってC++で開発されてたのか、知らなかったぜ

84 名前:名前は開発中のものです。 mailto:sage [2013/01/19(土) 22:10:37.28 ID:+PjkUk0Q]
なんとなく想像はつくと思うけど、
セーブロード機構の実装はめんどくさいよ。

85 名前:名前は開発中のものです。 mailto:sage [2013/01/19(土) 22:30:50.58 ID:CgroCKX/]
いつどんなタイミングでもゲーム画面をまるごと保存&復元可能にするのと
ゲームのプレイデータをセーブできてロード時に適切なシーンへ移行するのとでは
かなり実装方法が違ってくるから注意だなあ

前者はアプリ用のライブラリとして組み込めるレベルの機能だけど
後者はゲーム別に高度にカスタマイズしたレベルでの機能になる






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<23KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef