■ このスレッドは過去ログ倉庫に格納されています
C/C++ゲーム製作総合スレッド Part6
- 543 :名前は開発中のものです。:2014/11/06(木) 14:42:03.47 ID:/931C6S2.net
- おい、姿勢制御にクォータニオンを使う方法が特許取られてたぞ
特開2011−220825
でググって一番最初のリンク
今更こんなんで特許申請するとか頭おかしいし、なぜ取れるんだろうか…
- 544 :名前は開発中のものです。:2014/11/06(木) 15:30:14.91 ID:58LXPdcW.net
- 周知の技術って特許にならないんじゃなかったっけ。
ホントにそうなら取り消されるんじゃない?
- 545 :名前は開発中のものです。:2014/11/06(木) 15:41:51.54 ID:SeWxbthZ.net
- 訴えれば取り消せる
訴えなければ取り消されない
ちなみに低額訴訟なら簡単に訴えれる
- 546 :名前は開発中のものです。:2014/11/06(木) 15:46:35.49 ID:SeWxbthZ.net
- 間違えた。低額訴訟じゃなくて少額訴訟だった。
ちなみに3Dゲームに興味の無い俺は訴えないけどな
まあ訴えるなら頑張れ
- 547 :名前は開発中のものです。:2014/11/06(木) 15:53:35.47 ID:/931C6S2.net
- 申請者はトヨタ自動車になってて、最初は工業用ロボット制御の事で始まってるが
最終的には一般的なプログラム上での話しになってる
これは酷過ぎるな…
何の価値もないこの申請がトヨタの誰かの業績になってると思うと腹立つな
- 548 :名前は開発中のものです。:2014/11/06(木) 15:56:19.75 ID:WRpf6OH0.net
- 特定の特許申請に対して異議申し立てとか再審請求とか出来るんだろうか?
- 549 :名前は開発中のものです。:2014/11/06(木) 16:08:27.82 ID:/931C6S2.net
- 実際は、相手から訴えられない限り特許無効申請なんて誰もしないだろうね
そしてこういう下らない特許は山ほどあって
ゲーム 特許 訴訟
でググると結構色々あるな
- 550 :名前は開発中のものです。:2014/11/06(木) 16:13:48.30 ID:es6ThdJv.net
- 訴訟起こされるほど拡散力の強いゲームを作ってみたいもんだね
- 551 :名前は開発中のものです。:2014/11/06(木) 18:44:11.46 ID:F7RERGXP.net
- よくわからんがゲ製には関係ないじゃろ
- 552 :名前は開発中のものです。:2014/11/06(木) 19:53:55.97 ID:rZJzoyGT.net
- 特許で思い出したけどコナミだかどっかの
ロード中にミニゲームが遊べる
って特許が12月で切れるんやな
- 553 :名前は開発中のものです。:2014/11/06(木) 20:31:37.28 ID:KMTyqLtj.net
- 実際に訴訟を起こされたら>>550みたいな考えは吹き飛ぶだろう
それも、どこから出てきたのか見当もつかないサブマリン特許みたいな物ならなおさら
- 554 :名前は開発中のものです。:2014/11/06(木) 21:01:35.08 ID:/931C6S2.net
- >>552
ミニゲームだったらナムコだろ
リッジ7のロード中にゼビウスが遊べた時はびびったw
- 555 :名前は開発中のものです。:2014/11/06(木) 21:11:28.90 ID:Zp1CF6nb.net
- なぁ、特許って本当に社会の発展に貢献してるんだろうか・・・?
>>543みたいなゴミ特許が効力あるとか、唖然とするわ・・・。
- 556 :名前は開発中のものです。:2014/11/06(木) 21:19:10.59 ID:MoMQBjON.net
- 特許を審査するメンバーってちゃんと仕事してるのか考えさせるよな。
審査過程をチェックする機構もあるのか怪しい。
- 557 :名前は開発中のものです。:2014/11/06(木) 21:25:50.58 ID:OmSV/1Vy.net
- 永久機関そのままは駄目だけどちょっと表現変えるだけで通るみたいだしな
- 558 :名前は開発中のものです。:2014/11/06(木) 21:40:44.92 ID:58LXPdcW.net
- 特許の審査ってなにやってるんだろうと考えると、
まず考えられるのは今までに同じ特許がなかった事を調べる、くらいだろう。
次に既知の技術として存在してないかを調べるんだろうけど、
これいちいち調べてられないよな。漏れがでるのはしょうがない。
ネットが発展した現代では、調べるのもかなり容易になってきたのではないかと思うが、
審査官が来る日も来る日もググってると考えるとなにか悲しいものがあるな……。
- 559 :名前は開発中のものです。:2014/11/06(木) 21:53:29.21 ID:mXBMs4Fv.net
- その特許を調べるためのシステムをつくるような話があった気がしたけど頓挫したんだっけ
- 560 :名前は開発中のものです。:2014/11/06(木) 22:55:27.98 ID:T/qTIcHW.net
- この特許はフィードバック制御が必要だから、
新規性の判断はそこでされたんじゃないの?
- 561 :名前は開発中のものです。:2014/11/06(木) 23:20:16.77 ID:MoMQBjON.net
- よし、車輪でも申請してみるか
- 562 :名前は開発中のものです。:2014/11/06(木) 23:37:08.84 ID:u3pLa7VG.net
- >>541
あーいや、そういう話じゃなくて、
DXLibだとメインループ回ってるから、いくらLuaでコルーチンがあっても
1ループ間の時間に合わせて処理返さないといけないよなって話
- 563 :名前は開発中のものです。:2014/11/07(金) 00:36:18.17 ID:YN7LVK2N.net
- c++側とlua側ともにもう少し詳しく書いてみ
- 564 :名前は開発中のものです。:2014/11/07(金) 00:41:45.93 ID:WL/Bhc4K.net
- わからんって言ってるのに書いてみとはアスペしかいないのかよ
- 565 :名前は開発中のものです。:2014/11/07(金) 01:43:20.36 ID:OPX5vmff.net
- プログラマはアスペ気味の糞が多いからねw
そいつらを上手く奴隷として扱えるようになるのが社会の勝ち組。
- 566 :名前は開発中のものです。:2014/11/07(金) 01:53:01.03 ID:cHXJDjI4.net
- ていうかマルチスレッドで描画てどうやんの?
座標はupdateスレッドでロックしてるし描画するにしてもdrawスレッドでロックしないといけないだろ
メモリを2倍使ってダブルバッファリングで交互にリソースを入れ替えてもいいけど1フレーム遅れるし
要素ごとにロックとアンロックしてたらそっちのほうが処理重いでしょ
モーションブラーとかドロップシャドウみたいな、書き足すようなシェーダとかなら分かるんだけど、ゲームの要素そのものを描画するのにマルチスレッド?ってすごい疑問なんだけど
どんな風にやってるの?
- 567 :名前は開発中のものです。:2014/11/07(金) 02:53:09.53 ID:BtR0AX8u.net
- 俺、マルチスレッドってさっぱりわからんけど
マルチスレッドで描画するのに「1フレーム遅れる」って関係あんの?
- 568 :名前は開発中のものです。:2014/11/07(金) 03:13:07.36 ID:QezXslKR.net
- 片方はとにかく更新する
片方はとにかく描画する
ロックアンロックで同期させるならマルチスレッドをやめる
- 569 :名前は開発中のものです。:2014/11/07(金) 06:56:56.78 ID:cuSqlZ5a.net
- マルチスレッドを理解してない奴が多いな、まあ自分もあんまり理解はしてないが
というか、マルチスレッドだけでも本がいっぱい出てるからそれを参考にしたらいいかと
- 570 :名前は開発中のものです。:2014/11/07(金) 07:32:03.69 ID:9A2ZZlGV.net
- マルチスレッドの場合、普通は描画と更新を別々にするわけじゃない
それぞれのスレッドに別々の役割を与えて異なる処理を分担させる事になる
あと、マシンに対する負荷を減らすには同期処理しまくらないと意味がないし
ロックアンロックが重くなると言ってる奴はマルチスレッドを根本から誤解してる
というかとにかく本を読め
- 571 :名前は開発中のものです。:2014/11/07(金) 07:53:25.81 ID:7gbV2cfz.net
- とにかく1フレームの中に時間は8msぐらいはあるんだ
その中ですべての作業を終わらせる事を考えろ
重い処理は役割分担して複数のスレッドで終わらせばいいし、
軽い処理はわざわざ役割分担する必然性は無いからな
- 572 :名前は開発中のものです。:2014/11/07(金) 08:07:38.45 ID:0E5IqK7U.net
- 120fpsがデフォなのか
- 573 :名前は開発中のものです。:2014/11/07(金) 08:58:33.47 ID:cHXJDjI4.net
- じゃあ描画要素ごとにロックアンロックして、
もし描画スレッドで更新スレッドがロックしてる描画要素を描画しようとしたらアンロックされるまで待つのか?
- 574 :名前は開発中のものです。:2014/11/07(金) 09:08:00.46 ID:4PyQVSc6.net
- 描画スレッド分けるのは描画中にメインループ止まるの防ぐ為だと思ってたけど
そんな事しなくても並列処理してくれるもんなの?
- 575 :名前は開発中のものです。:2014/11/07(金) 09:22:31.34 ID:xV0IZ5SC.net
- >>570
javaとかだと排他ロックするのすごい重い気がするんだけど
C++だとそんなことないの?
- 576 :名前は開発中のものです。:2014/11/07(金) 11:15:34.21 ID:+qZS8i0Y.net
- ロックすると重くなるんじゃなくてロックの割り当てというかスレッドの割り当てを間違えてるから重くなる
ロックしている間に別のスレッドをフルに動かすのがデフォ
- 577 :名前は開発中のものです。:2014/11/07(金) 11:42:28.34 ID:KHDaX/cL.net
- 描画をマルチスレッドにするには自前の描画コマンド(のようなもの)を作らないと駄目だね
で、コマンドの作成を出来る限りマルチスレッドで行なう
最後にメインスレッドが自前の描画コマンドを解析しつつ各種API(DirectXやOpenGL)を呼び出していく
- 578 :名前は開発中のものです。:2014/11/07(金) 11:53:44.31 ID:CL7k1iDn.net
- そこでluabindですよ
- 579 :名前は開発中のものです。:2014/11/07(金) 12:23:40.03 ID:mfboXhbt.net
- そういや、描画範囲が違う場合は別々のスレッドで別個に書き込み出来るけれども、
描画範囲が重なる場合はこの手段が使えないね
あとスレッドって、何度も起動させて使うよりも、
一度起動させたらロックさせながら使い回す方が処理が早いね
- 580 :名前は開発中のものです。:2014/11/07(金) 15:24:47.03 ID:Frm/uGA7.net
- ごめん、いまいち分かってないんだけど
今の話ってどのプラットフォームを想定して進行してるの?
DirectX? OpenGL? ソフトウェア描画? それとも特に規定しない全般?
- 581 :名前は開発中のものです。:2014/11/07(金) 23:07:57.05 ID:JstQIuBK.net
- 特にしてないはずだけど、DirectXはユーザが多いだけに暗黙な前提にしてる人が多そうなイメージ
- 582 :名前は開発中のものです。:2014/11/08(土) 10:52:03.60 ID:CsoGcbNX.net
- 最近はマルチコアなCPUも珍しくないからなぁ
ウチのタブレットは4コアだ
PCはシングルコアだが
PCはわりと長持ちだらなぁ
- 583 :名前は開発中のものです。:2014/11/08(土) 11:16:44.54 ID:kQCHHHLC.net
- よく考えたら背景だろうがエフェクトだろうがキャラクターだろうが
カメラの射影行列使いまわすんだからカメラのインスタンスロックしないと危ないよね
で、カメラのアップデートは更新処理するスレッドで回すんだから結局更新スレッドと描画スレッドで占有権を撮り合う形になるから
アンロック待ちが当たり前なのか
- 584 :名前は開発中のものです。:2014/11/08(土) 11:30:01.41 ID:unIj8h+A.net
- プログラム内であまり時間を使っていない部分までマルチスレッドにしてもパフォーマンスが落ちるだけ
- 585 :名前は開発中のものです。:2014/11/08(土) 12:09:00.67 ID:mcbpZdSD.net
- DirectX11のDeffered Contextとか使うとうまくマルチコア化できるんかな
気になってはいるんだけど試せてないんだよな
- 586 :名前は開発中のものです。:2014/11/08(土) 12:09:24.51 ID:hcp3vt2I.net
- >>583
1フレーム内で不整合起きなきゃいいんだしそんな神経質にやることないと思うけど
描画スレッド内で他スレッドから書き込まれる領域とスレッド内で使う領域分けておけばいいんじゃない
- 587 :名前は開発中のものです。:2014/11/08(土) 12:10:50.95 ID:/8NTzH0L.net
- マルチスレッドを使ってドヤ顔したい年頃なんだろう
- 588 :名前は開発中のものです。:2014/11/08(土) 12:11:13.95 ID:mcbpZdSD.net
- 綴り間違ってた、「Deferred Context」だった
まさにGPUへのコマンドリストの構築と発行をやってくれるっぽいんだが
- 589 :名前は開発中のものです。:2014/11/08(土) 12:11:48.40 ID:V2oqVXE4.net
- 自分もいまいちDefferedContextの使いどころが分からんくて
ImmediateContextしか使ってない。
DefferedContextは並列化の点で少し中途半端なものらしく、
この点を改善するのもDirectX12の目的みたいよ。
早くDirectX12を触りたいなぁ。
- 590 :名前は開発中のものです。:2014/11/08(土) 12:51:36.67 ID:omvuHK+K.net
- そもそもウィンドスレッドとゲームスレッドにすら処理を分担できてないゲームが珍しくないけどな
重い処理をやってるとウィンドが動かなくなるとかw
- 591 :名前は開発中のものです。:2014/11/08(土) 13:25:48.11 ID:omvuHK+K.net
- そもそもマルチスレッドでプログラムするのは良いけれど、コア数いくつのマシンを前提にしてる?
あと、コア数の足りないマシンは切り捨てるの?
- 592 :名前は開発中のものです。:2014/11/08(土) 14:33:58.84 ID:kQCHHHLC.net
- コア数少なかったらOSが勝手にスレッド振り分けてくれるんじゃないの?
まぁそうじゃなくても、今どきPCでゲームやろうって人がシングルコアなんて無いと思うけど
- 593 :名前は開発中のものです。:2014/11/08(土) 14:46:37.18 ID:omvuHK+K.net
- >>592
おまえは>>582を読まなかったのか?
あと、PCはネットに繋ぐための道具とかワープロの代わりとしか思ってない人は珍しくないし、
そーゆー人はPCが壊れるまで買い換えない
- 594 :名前は開発中のものです。:2014/11/08(土) 14:50:59.54 ID:zEUiJRA7.net
- ゲーム用途じゃないじゃんw
- 595 :名前は開発中のものです。:2014/11/08(土) 14:54:18.14 ID:CsoGcbNX.net
- DVD再生装置にインディーズゲーム、使い道はまだまだ広いぞwww
2Dゲームの信者はまだまだ多い
- 596 :名前は開発中のものです。:2014/11/08(土) 15:00:01.75 ID:mKjDtcTQ.net
- エロゲじゃないんだw
- 597 :名前は開発中のものです。:2014/11/08(土) 15:46:47.80 ID:hKybVK3f.net
- 2Dっつーか古いOSでしか動かないゲーム?
いいこと思いついた、お前ら古ゲーを新型OSでも動くように移植しようぜ
え?俺?ソースもないのにそんなのやる気ないです
- 598 :名前は開発中のものです。:2014/11/08(土) 17:38:42.74 ID:Gya1/bv4.net
- みんなはC++でゲーム開発するときシーン制御ってどうやってやってる?
王道とかあるの?
- 599 :名前は開発中のものです。:2014/11/08(土) 17:52:05.59 ID:R8iM6laI.net
- そのシーンについて、もう少しkwsk
(ジャンルによって、ツールによって)意味が異なるので、そこんとこの絞り込みを
- 600 :名前は開発中のものです。:2014/11/08(土) 18:03:53.69 ID:R8iM6laI.net
- >>584
ですよねぇ…
>>591
個人的なケースでは、自分が使ってるi5のノートPCのバッテリ駆動状態で
できるだけ長く動かせるように仕方なく組んだ事ならありますねぇ
即売会でのデモ用(試遊用)として、予備バッテリーを何個も持って行きたく
なかったので。あと夏なので、あまりアッチッチーになるのも困るんで
- 601 :名前は開発中のものです。:2014/11/08(土) 18:11:24.52 ID:Gya1/bv4.net
- >>599
例えばRPG作るとして、タイトル、セーブデータ選択、マップ、戦闘、またマップ、町のマップ、お店で購入、みたいなシーンの管理
今あげた奴の中でも、戦闘までシーンとして管理していいのかどうかとか
- 602 :名前は開発中のものです。:2014/11/08(土) 19:04:20.72 ID:kQCHHHLC.net
- 例えばRPGのマップ画面で戦闘になると、戦闘画面へと切り替わるじゃん
でもマップ画面でショップ画面になっても、画面とは名ばかりの操作できるウィンドウが表示されるだけなのかもしれないし
- 603 :名前は開発中のものです。:2014/11/08(土) 19:26:18.89 ID:omvuHK+K.net
- 戦闘シーンこそ別個で管理しないとややこしいことになりそうなんだが……
- 604 :名前は開発中のものです。:2014/11/08(土) 20:42:42.63 ID:hcp3vt2I.net
- ウィンドウ出す程度なら分けなくていいんじゃないの
こうしなきゃいけないなんて決まりはないんだから複雑さ見て決めりゃいいと思うけど
- 605 :名前は開発中のものです。:2014/11/08(土) 21:13:23.69 ID:omvuHK+K.net
- 自分の場合、マップシーンでは、セリフはメッセージウィンドウ、
メニューはメニューウィンドウ、買い物は販売メニューウィンドウ、
所持金は金額ウィンドウ、ってな感じに分けてるが、
戦闘シーンは別プログラムで処理している
タイトルシーンではメニューウィンドウ出してるし
あと、フィールドマップと町マップとダンジョンマップでは、
データを変えて同じプログラムで処理している
この辺はわざわざ別個のプログラムにする事は考えもしなかったな
- 606 :名前は開発中のものです。:2014/11/08(土) 21:33:54.63 ID:0KWVrT87.net
- セガ本はStateパターンって話は聞いた
- 607 :名前は開発中のものです。:2014/11/08(土) 22:19:46.15 ID:zEUiJRA7.net
- そういやゲーム関連での定番、デザパタって決まっているもん?
やっぱりGoFの流用?
- 608 :名前は開発中のものです。:2014/11/08(土) 23:09:04.26 ID:xWQV6qjI.net
- ゲームつくろーのやつ見てたな
- 609 :名前は開発中のものです。:2014/11/08(土) 23:25:12.94 ID:hcp3vt2I.net
- タスクシステム
- 610 :名前は開発中のものです。:2014/11/08(土) 23:48:44.70 ID:zEUiJRA7.net
- >>609
振る舞いに関するパターンやね。メモリ管理も含めた。
- 611 :名前は開発中のものです。:2014/11/09(日) 00:03:30.39 ID:tU74c/u+.net
- マルチタスクって平行に複数の動作を同時に行うって事だからね
スクリプト言語のコルーチンを使えば簡単簡単
マルチスレッド?あれは同じメモリに複数アクセスすると例外を発生させるから難しいんだよ、
処理速度は早くなるけどな
- 612 :名前は開発中のものです。:2014/11/09(日) 00:20:14.91 ID:tU74c/u+.net
- >>589
スレッディング・ビルディング・ブロックに対応するのかな?
- 613 :名前は開発中のものです。:2014/11/09(日) 02:11:09.89 ID:b6C1rYs5.net
- >>601
以下、あくまでも私感
演出上の場面(シーン)として。テレビゲームの典型的な和RPG(例:ドラクエ)
同様にマップ移動と戦闘で完全に切り替えてるなら、別シーンとして区切る
ゲームルールというかゲームマスター視点で。マップ移動中と戦闘中では
時間も移動距離も各キャラの見た目も状態もできる事も挙げればキリがない
くらい仕事が異なるので、別シーンとして区切る
プログラミングの視点で。自分は戦闘だけでテストできるようにしときたい派。
戦闘における値のやり取りが面白さの肝だと思う戦闘厨(ストーリーとか設定
とか見た目なんて飾りだよ派)なので、まず戦闘が面白くなるまで練り込みたい
から。マップ移動時とは別のモジュールとして区切る
- 614 :名前は開発中のものです。:2014/11/09(日) 02:45:25.53 ID:CGct2DUQ.net
- 入れ子にすればいいじゃん
なんで階層を一つまでに制約してるん
- 615 :名前は開発中のものです。:2014/11/09(日) 07:19:30.89 ID:b6C1rYs5.net
- >>614
んー。そんな話はしていないと思うんだが…何か誤解があるようなので
もう少しkwsk頼む。整理するために確認させてもらっていいかな?
・モジュール分割する事 (或いはシーンを分ける事)
・入れ子(ネスティング)しない事 (或いは階層を一つまでに制約する事)
これらは直結するか?(YES/NO)
- 616 :名前は開発中のものです。:2014/11/09(日) 10:41:43.85 ID:IF+insbO.net
- http://getnews.jp/archives/54427
マップ画面中に戦闘画面とか
- 617 :名前は開発中のものです。:2014/11/09(日) 11:21:15.79 ID:ot2OM0IR.net
- 昔、どこかでチラッと聞いただけだから細かいことは分からないんだけど、
階層構造付きのStateパターン(?)って、どうやるの?
Scene
├Title
├Game
|├Play
|├Pause
|└Result
└Config
みたいな構成で、Game::PauseからTitleに飛ぶとか。
単に名前空間で分けるだけにして、シーンとしては並列に扱うのが楽だとは思うんだけどさ。
- 618 :名前は開発中のものです。:2014/11/09(日) 11:29:19.51 ID:8zzCuCYW.net
- スタック
- 619 :名前は開発中のものです。:2014/11/09(日) 11:54:42.19 ID:ot2OM0IR.net
- ああすまん、流れを読み違えてた。
あるシーンの中で、別のシーン(メニュー画面など)を挿入するという話だったのね。失敬した。
- 620 :名前は開発中のものです。:2014/11/09(日) 11:58:46.71 ID:mPPfhXcl.net
- 考え方としてはスタックに詰んで行く感覚で良いけど
実際の持ち方としてはリストの方がいい。
RPGで戦闘画面の背景にマップ画面を使ったり、
ARPGでメニュー画面開いてる間も敵が動くようにできる
Stateパターンはシンプルな動作の切り替えに留めて、
シーンの遷移はAndroidのintentを参考にして作りこんだ方が良い
- 621 :名前は開発中のものです。:2014/11/09(日) 12:05:20.17 ID:ot2OM0IR.net
- スタックによるシーン処理で思い出した。
テイルズシリーズのどれかだったか、
フィールドでメニュー画面を開いて、そこからタイトル画面に戻ると、
暗転中にフィールドのBGMが一瞬だけ流れるというネタがあったなあ。
シーンそのものはともかく、BGMをスタックで管理してたからなんだろうか。
- 622 :名前は開発中のものです。:2014/11/09(日) 17:00:17.96 ID:IF+insbO.net
- atoi関数ってなんでatoiなの?
stoiとかctoiとかcptoiとかならわかるけどなんでaなの?
- 623 :名前は開発中のものです。:2014/11/09(日) 17:02:41.77 ID:EiTaW/mC.net
- >>622
asciiコードから変換だから
- 624 :名前は開発中のものです。:2014/11/09(日) 21:42:38.03 ID:6dA8GNBZ.net
- >>623
あいうえおのaかと思ってた
- 625 :名前は開発中のものです。:2014/11/11(火) 00:52:56.10 ID:XQVF6NRm.net
- それだったらABCのAの方が説得力あるだろ
- 626 :名前は開発中のものです。:2014/11/11(火) 01:38:28.59 ID:Ml1KtPS5.net
- どうでもいい突っ込みをすると、ABCを変換するわけじゃないし。
- 627 :名前は開発中のものです。:2014/11/11(火) 09:36:35.03 ID:KfLTdZLl.net
- アルファベットのaらしい
- 628 :名前は開発中のものです。:2014/11/11(火) 11:07:29.28 ID:uQazbP0q.net
- http://ja.m.wikipedia.org/wiki/Atoi
- 629 :名前は開発中のものです。:2014/11/11(火) 11:46:03.47 ID:NdomKUg0.net
- >>627
いつからアラビア数字はアルファベットになったんだよ
- 630 :名前は開発中のものです。:2014/11/11(火) 14:06:45.04 ID:l6H8mfSN.net
- シェーダーとかネットワークって
シェーダー・・・座標変換と色の計算
バッファ・・・シェーダーの変数
バインド・・・バッファの適用
ソケット・・・ネットワークの変数
send・・・データの送信
recv・・・データの受信
っていう感じであってる?
- 631 :名前は開発中のものです。:2014/11/11(火) 15:51:23.77 ID:FlAn94PS.net
- >>630
そういう理解で構わないから、実際に使って(試して)(手を動かして)みたほうがいい
あれこれ疑問を持つのはその後でいい
- 632 :名前は開発中のものです。:2014/11/12(水) 10:33:52.89 ID:3FzO9Rn6.net
- いまの時代cとdirectxでゲーム作ることってあるんですか?
学習にはいいと思うけど、現実的ではないように思えるんだけど…
- 633 :名前は開発中のものです。:2014/11/12(水) 11:21:02.43 ID:tRAW/G/v.net
- いまの時代もゲームはほとんど全部CかC++で出来ている
- 634 :名前は開発中のものです。:2014/11/12(水) 12:10:58.56 ID:nj7UpIrk.net
- つまり632は現実を知らなかったと
- 635 :名前は開発中のものです。:2014/11/12(水) 12:13:44.26 ID:2wLmFIfA.net
- CPU性能が上がり続ければC以外の選択肢も増え続けたんだろうけどな
やっぱトロい言語じゃ駄目だぁな
- 636 :名前は開発中のものです。:2014/11/12(水) 12:15:34.55 ID:Jp7fJIBG.net
- お前らのc++ゲーム制作知識を
wikiかどこかに集約してくれ(他力本願
- 637 :名前は開発中のものです。:2014/11/12(水) 12:25:14.03 ID:U9TuOuDT.net
- 今のCPUがC言語に合わせた進化してるだけなんだけどね
動的言語はハードウェア側での最適化が難しいけど
- 638 :名前は開発中のものです。:2014/11/12(水) 12:25:50.29 ID:AuBOaCee.net
- なおC#もとい海栗も増えてきている模様…結局C系列じゃん
>>636
言い出しっぺの法則
- 639 :名前は開発中のものです。:2014/11/12(水) 12:36:22.31 ID:NowaE2rM.net
- なぁに、いずれ並列処理用言語が出来て、他の言語は駆逐されるよ
今は速度が必要なら並列化を目指せばいいからな
- 640 :名前は開発中のものです。:2014/11/12(水) 13:07:42.51 ID:dBZQKyvT.net
- ガベコレ持ち言語じゃ作りにくいよな
C#がどうなってんのかわかんないけど
- 641 :名前は開発中のものです。:2014/11/12(水) 13:18:03.99 ID:uNUWqhDA.net
- c++もスマートポインタやらSTLやら使わない?
- 642 :名前は開発中のものです。:2014/11/12(水) 13:24:07.08 ID:nj7UpIrk.net
- 量子コンピューターの思考イメージを展開する、初の思考パターンイメージコンパイラの誕生である
- 643 :名前は開発中のものです。:2014/11/12(水) 14:19:53.36 ID:Uu3QrSPF.net
- 海外の公害基準でCPUの性能止められてるし、当分は今のままだろう
- 644 :名前は開発中のものです。:2014/11/12(水) 14:33:14.13 ID:ovXfI3JT.net
- C#やJavaが主流になれないのは速度より良いライブラリが無いからじゃないの
UnityでC#の人気が爆発してるし、薄いクラスライブラリで良いのがあればいいのだが
http://d.hatena.ne.jp/Nagise/20090322/1237723661
- 645 :名前は開発中のものです。:2014/11/12(水) 17:16:29.25 ID:5VJqGqvp.net
- >>632
そういう理解で構わないから
@自分に適した道具選べ
Aそれ使って面白いもの作れ
B人に遊んでもらえ
これ出来る奴は、お前の疑問とは縁がない。関係ないからな
- 646 :名前は開発中のものです。:2014/11/12(水) 17:46:38.37 ID:AuBOaCee.net
- ま、まあ2と3は「自分が楽しめる物を作る」だけでもいいと思うよ
別にすべての開発者が作った物を「俺のゲームをやってくれ!!!!1」ってガンガン公開する訳じゃないから
他人に公開するにしても、自分すら楽しめないようなゲームはクソの中のクソ キングオブクソ
- 647 :名前は開発中のものです。:2014/11/12(水) 21:20:04.82 ID:SYY1txKH.net
- C++&DirectXでガリガリと組み上げていくことに喜びを感じる
- 648 :名前は開発中のものです。:2014/11/12(水) 21:53:11.34 ID:GHnQwsv6.net
- Unreal Engineは最新のバージョン4では3までにあったスクリプト言語のUnreal Scriptが無くなってC++で書くようになったしな。
Visualスクリプトエディタが強力になったのもあるけど
- 649 :名前は開発中のものです。:2014/11/13(木) 07:26:45.01 ID:R9H0HNzV.net
- アンリアルエンジンの本って売ってるけど、アンリアルエンジン未経験者でも出来るようになるの?
誰か買ったことある人いたら教えて
- 650 :名前は開発中のものです。:2014/11/13(木) 11:32:24.41 ID:pEhVoeVb.net
- C++は代わりが無いぐらい重要な言語なのは分かるが、最新の仕様とか見てると
もう一度根本的に一から設計しなおしてくれと言いたくなるぐらいグチャグチャになってる…
最新の仕様も含めて深く理解するにはとてつもなく困難な言語なのは間違いない
- 651 :名前は開発中のものです。:2014/11/13(木) 11:36:07.43 ID:HK6+TuGr.net
- いろいろ盛り込んだからやりたいようにやってくれってことでしょ
やりたいことがはっきりしてれば目的は達成できる
- 652 :名前は開発中のものです。:2014/11/13(木) 12:45:39.27 ID:UMYfazR7.net
- D言語実装待ったなしですか分かりますん
いろいろあるからこそ汎用性はダントツのトップだし、
掘ろうと思えばどこまででも掘れる拡張性もある
バグの出やすさに目をつぶれば開発者理想の言語じゃないですか
なお初心者には
- 653 :名前は開発中のものです。:2014/11/13(木) 16:15:51.23 ID:mQixsQeM.net
- 初心者はCとして使うから
- 654 :名前は開発中のものです。:2014/11/13(木) 23:08:38.36 ID:5guIEaf6.net
- パフォーマンス必要な箇所はCぽく書いて
生産性が必要な所はOOPで書く
みたいに分けられて良い…のかな
- 655 :名前は開発中のものです。:2014/11/14(金) 13:14:55.84 ID:5wiMUdhH.net
- 「船頭多くして船山に登る。それがC++」
「水陸両用ですね。最高じゃないですか」
- 656 :名前は開発中のものです。:2014/11/14(金) 20:31:26.83 ID:yjqeER4j.net
- C++が一番気持ちいい
- 657 :名前は開発中のものです。:2014/11/14(金) 20:36:28.88 ID:BUwtlw7S.net
- そうでしょ?
- 658 :名前は開発中のものです。:2014/11/14(金) 21:31:13.67 ID:PGsqEl+k.net
- 眠たくなるからやめれ
- 659 :名前は開発中のものです。:2014/11/15(土) 00:35:42.62 ID:QsaQ9+YO.net
- VC++2015にはgeneratorが入るらしい。
スクリプト使う理由が一つ減った?
- 660 :名前は開発中のものです。:2014/11/15(土) 01:07:43.80 ID:ocCnTJxq.net
- サイニー?
- 661 :名前は開発中のものです。:2014/11/15(土) 01:51:29.18 ID:FYIlPqIe.net
- generatorって?ググっても英語ばっかだし……
- 662 :名前は開発中のものです。:2014/11/15(土) 02:44:54.65 ID:csIS2THd.net
- >>661
C++でyieldが使えるようになる
- 663 :名前は開発中のものです。:2014/11/15(土) 06:20:29.97 ID:QsaQ9+YO.net
- >>661
http://blogs.msdn.com/b/vcblog/archive/2014/11/12/resumable-functions-in-c.aspx
- 664 :名前は開発中のものです。:2014/11/15(土) 07:59:55.58 ID:v6LA9C/H.net
- yieldさんpythonでお世話になってます。
- 665 :名前は開発中のものです。:2014/11/15(土) 08:21:47.08 ID:a7IQ1KUV.net
- これバイナリってどうなってんだろ
generatorの関数内の変数は静的な領域に確保されんのかな
普通にスタック積んでたらこんなん実装出来ないよな
- 666 :名前は開発中のものです。:2014/11/15(土) 08:33:02.98 ID:v6LA9C/H.net
- >>665
Boost.Coroutine
- 667 :名前は開発中のものです。:2014/11/15(土) 09:14:58.45 ID:/7FTHmq8.net
- >>663
何が嬉しいのかさっぱり分からん・・・(汗)
コロチン??
- 668 :名前は開発中のものです。:2014/11/15(土) 09:51:15.18 ID:v6LA9C/H.net
- >>667
例えばオブジェクトを順番に返したいときに楽するならlistとかvectorに入れて返すよね?
でも一つずつ順番に処理していくだけであれば一度に全部作ってメモリに持っておくのはメモリの無駄
parserとか作るとき、なるべく省メモリにしたいけど(XMLのSAXみたいに)使い勝手は落としたくないときとかに便利
- 669 :667:2014/11/15(土) 10:08:49.83 ID:/7FTHmq8.net
- >>668
あ、なるほど、データ作りながら処理かけていけるわけか。
サンキュー!
- 670 :名前は開発中のものです。:2014/11/15(土) 11:15:19.49 ID:a7IQ1KUV.net
- >>666
よくわからんけどヒープに確保されんのかな
- 671 :名前は開発中のものです。:2014/11/15(土) 12:26:57.64 ID:VJG7MPsg.net
- ヒープ以外にどこに確保されるってんだ
- 672 :名前は開発中のものです。:2014/11/15(土) 12:41:40.07 ID:v6LA9C/H.net
- >>670
http://d.hatena.ne.jp/melpon/touch/20091212/1260584012
- 673 :名前は開発中のものです。:2014/11/15(土) 17:09:58.52 ID:VJG7MPsg.net
- yieldってなんだ
誰か一言で言い表して
- 674 :名前は開発中のものです。:2014/11/15(土) 17:13:41.84 ID:skgsPBOl.net
- >>673
コルーチン
http://en.wikipedia.org/wiki/Coroutine
- 675 :名前は開発中のものです。:2014/11/15(土) 17:23:51.51 ID:VJG7MPsg.net
- >>674
関数の途中でデータ返せるってだけか
でもこれ返り値受け取る側はどういう処理になるんだ?
受け取ったらそのまま次の行に行きそうだけど、そうすると次呼び出された時中断したところから再開するのか?
- 676 :名前は開発中のものです。:2014/11/15(土) 17:28:35.72 ID:IlcXR0Tx.net
- 「終わり」って言うまでキャッチボールだな
- 677 :名前は開発中のものです。:2014/11/15(土) 21:07:43.80 ID:csIS2THd.net
- 関数の途中でデータ返せるってだけって、だけっておま・・・・
何のためにLua導入してまでコルーチン使ってると思ってるのかと・・・・
- 678 :名前は開発中のものです。:2014/11/15(土) 21:28:20.19 ID:nxADb3aY.net
- 使わない人にはいらないものだし
- 679 :名前は開発中のものです。:2014/11/15(土) 21:49:25.06 ID:Cvi6GQeL.net
- コルーチンを使うといっぺんに何十行も減らせる場合があるのですよ
サブルーチンでマルチスレッド制御をするよりもお手軽だし
- 680 :名前は開発中のものです。:2014/11/15(土) 23:50:56.76 ID:/7FTHmq8.net
- >>679
へぇ〜。
コルーチンを使ったテクニック・トリック集みたいなの欲しいな。
- 681 :名前は開発中のものです。:2014/11/16(日) 22:25:19.06 ID:BmMQH27T.net
- コルーチンってノンプリエンプティブなスレッド制御のことでしょ?
オレの理解がおかしいのかこれw
- 682 :名前は開発中のものです。:2014/11/17(月) 00:42:18.99 ID:WLL2OPoM.net
- 昔のウィンドウズじゃあるまいし
- 683 :名前は開発中のものです。:2014/11/17(月) 10:29:07.85 ID:Ld14qEhv.net
- >>677
別にLua導入せずともsetjump longjumpでコルーチンは作れるけどね
非同期処理が同期処理と同じように書けるから滅茶苦茶便利なのは使った人にしか分からんだろうね
- 684 :名前は開発中のものです。:2014/11/17(月) 11:54:49.69 ID:J8hAdEWA.net
- >>681
その理解であっているとおもうよ。
状態を(コード上は)ヒープに持たなくても、ローカル変数を引き継いだり、
ループを途中から再開できる、構文糖みたいなもの。
- 685 :名前は開発中のものです。:2014/11/17(月) 20:35:59.87 ID:KwtC8N0w.net
- ぶっちゃけコルーチン使わない
原理的にはシーンをStateパターンで切り替えるのと変わらないし
- 686 :名前は開発中のものです。:2014/11/18(火) 18:34:34.98 ID:tX1o0EDZ.net
- 改造できる武器を作ったとして、そのデータを保持するにはどうすればいいんだろう?
無改造の物をオリジナルとして、
そのデータ配列を丸ごとコピーして改造(変数に変更を加える)して、
それをあらかじめ確保しておいた保存用の配列にぶっ込めばいいのだろうか
- 687 :名前は開発中のものです。:2014/11/18(火) 18:45:45.72 ID:MnekbNE0.net
- 改造したら別の武器にする
- 688 :名前は開発中のものです。:2014/11/18(火) 18:58:45.41 ID:VF38SoXr.net
- 改造の定義にもよるが687と同じく別の武器にしてる
ステータスを上げるだけの改造なら
修正値を保持するor改造回数を保持するって感じじゃない?
- 689 :名前は開発中のものです。:2014/11/18(火) 21:07:47.07 ID:Lfan6beG.net
- 改造前提で、かつそれがゲーム内で重要な位置にあるなら、
最初からアイテム欄にある全ての武器について、名前・ステータス・種別などのデータを個々に持たせてしまったほうが良さそう。
要は、「どうのつるぎ」が「2本」という管理じゃなくて
「どうのつるぎ(武器ID:001)/攻:12/防:0/価格:100G」 「どうのつるぎ(武器ID:002)/攻:12/防:0/価格:100G」 みたいにするっていう。
- 690 :名前は開発中のものです。:2014/11/18(火) 21:48:09.63 ID:qY3UPxZd.net
- 好きなようにパラメータいじれるなら所持アイテム個々にパラメータ持たせる必要あるし
アイテム名+1みたいに変動が決まってるなら最初から別のアイテムとしてデータ作ればいい
- 691 :名前は開発中のものです。:2014/11/18(火) 22:44:11.50 ID:QzZupUBq.net
- やったことあるのは
------------------------------
装備マスタ(装備ID, 名前, 基礎攻撃力, 基礎○○力, ...)
生成装備(生成装備No, 装備ID, 攻撃力補正値, ○○力補正値, ...)
プレイヤー所持装備(生成装備No, 装備中キャラNo) //ここに持たせる[装備中キャラNo]は冗長だけど、ここで持たせておくと便利
キャラクターマスタ(キャラID, 名前, 属性, 攻撃力成長率, ○○力成長率, ...)
生成キャラクター(生成キャラNo, Lv, 生成装備No, ...)
------------------------------
(かなり端折ってるけど)こんな風で、起動時にロードされてプレイ中ずっと不変なマスタと、
動的生成したり変化する部分に分けて、武器の能力を可変にして自動生成できるようにしたり、
敵モンスターのレベルを変動させて自動生成できるように頑張ったな
作っていく上で失敗したと思ったのが、キャラの属性がマスタ側で固定なせいで、
敵の色違いキャラ作るごとにマスタ1行作るハメになったり、主人公をキャラメイクさせたいときに、
キャラメイクパターン分の主人公マスタを作らないといけなくなって、スマートじゃなかったので諦めた
ただ、これはこれで設計としては正しかったんじゃないかな、とも思ってる。
というのも、バランス調整する時に、マスタを変更すればセーブデータ上の「生成装備」の能力も修正されたから。
今作ってるのは、↑でいうマスタの部分を「テンプレート」と称して、
装備テンプレート(テンプレID, 連番, 名前, 基礎攻撃力) //アップデートで能力を修正したら新規行で連番を振る
生成装備(生成装備No, テンプレID, 現在適用連番, 名前, 攻撃力)
生成装備側に値を複写(基礎攻撃力→攻撃力)して、その後は自由に変更できるようにする。
アップデート時は、連番が一番大きいテンプレートとの差分で修正できるようにするつもり
- 692 :名前は開発中のものです。:2014/11/19(水) 00:34:02.86 ID:OX7d9Gn4.net
- >>687-688
実は真っ先に考えたのはそれなんだけど、
アイテムや改造の数を増やせば増やすほどモコモコとアイテムの全体数が増えて、
管理を考えるとおしっこもっちゃいそうな量になって困った
自由度も低かったし
>>689-691
やっぱりそういう風にやるしかないか、再利用性も高そうだし
いろいろな意見をありがとう 参考になった
- 693 :名前は開発中のものです。:2014/11/19(水) 07:21:33.65 ID:/n+zepvC.net
- 単純に Clone + シリアライズ ではいかんのか?
実態ではなくアイテムIDで保持しようとするから難しくなるんじゃ?
- 694 :名前は開発中のものです。:2014/11/19(水) 07:53:10.12 ID:VDiSqvaf.net
- >>693
要するに、データを丸々コピーするのじゃいかんのか?って事だろ?
俺は逆に最近レコード管理に切り替えた
っつーかソースコードを一カ所に纏める方が楽だし、メモリ消費も減るから、俺はこの方がいいと思ってる
って言うか、存在しない名前のアイテムが発生するバグに対応するのが面倒で
- 695 :名前は開発中のものです。:2014/11/19(水) 08:04:49.35 ID:VDiSqvaf.net
- あと、実体処理だとセーブデータに記録した後にデータを変更するのが面倒だと思う
- 696 :名前は開発中のものです。:2014/11/19(水) 16:05:10.60 ID:MSY6gmXE.net
- 一旦データ管理という場面に踏み込むと、こうやって多くの手間や技術を要求される
これだからRPGは初心者にはおすすめできないんだが、何故初心者に限ってRPGを作りたがるんだ
- 697 :名前は開発中のものです。:2014/11/19(水) 19:21:08.31 ID:HWXJ3kGs.net
- RPG・・・データ管理・データ作成が面倒
SIM・・・バランス調整や、AIやナビゲーションマップ等が面倒
ADV・・・フラグ管理やテキスト作成が面倒
ACT・・・地面や壁との接触判定、マップを作るのが面倒
RCE・・・車を操作するAIが面倒、サーキットのウェイポイントの調整が大変
STG・・・当たり判定を飛ばすだけ、壁なんて要らん、AIも適当でいい、テキストもいらん、敵がいつ出てくるかだけ考えろ、伸ばしたい分野だけ拘れる登竜門的存在
- 698 :名前は開発中のものです。:2014/11/19(水) 20:59:46.83 ID:OX7d9Gn4.net
- ブロック崩し…パズル…
まあ、パズルはそれこそAIがな
将棋で超AI作ってプロ棋士と戦わせるだけでお祭りになるくらい
- 699 :名前は開発中のものです。:2014/11/19(水) 23:18:55.69 ID:7ML/+Uac.net
- テトリス!
- 700 :名前は開発中のものです。:2014/11/20(木) 00:30:04.14 ID:vWl5cX6m.net
- 趣味プログラミングは鼻くそホジホジしたり屁をこいたりしながら
土日の内に作っちゃう人間なので、RPGとかデカブツは無理だなぁ
元々好きじゃないから作る気も起きないわけだが
- 701 :名前は開発中のものです。:2014/11/20(木) 04:07:38.08 ID:h+JiqRdV.net
- 俺も学生の頃はそうだったな。
集中力自慢で4日間睡眠時間2時間で仕上げきる、それを自慢にしてた。
だが社会人になって悟った。
ある程度以上のものを作ろうと思ったら、それじゃ駄目なんだと。
プロマネとしてチームを率いることができなければ、いつまでも
徹夜自慢のバカのままで終わるんだと。
- 702 :名前は開発中のものです。:2014/11/20(木) 05:21:30.14 ID:vSwwwYEe.net
- そっか、すごいね
- 703 :名前は開発中のものです。:2014/11/20(木) 16:13:36.88 ID:ASkU6c/s.net
- やりたい事がすり替わっちゃったんだな、可哀相に
- 704 :名前は開発中のものです。:2014/11/20(木) 17:24:27.51 ID:5jfsrVJn.net
- 人海戦術でしか作れない程度の能力の低いプログラマーには社会人が凄く見えるんだろうな
- 705 :名前は開発中のものです。:2014/11/20(木) 17:50:24.81 ID:6dfcdxQ7.net
- 人海戦術が程度が低い制作形態かどうかは知らないが、
絵とか音楽とかにこだわりだしたら誰かの手も借りたくなる事はある
だが、素材探しをしているうちに結局完璧に自分の構想を実行できるのは自分だけだと悟る
俺が何人か欲しい
- 706 :名前は開発中のものです。:2014/11/20(木) 18:06:31.42 ID:5jfsrVJn.net
- 10人プログラマーが集まれば作れるようなゲームを作りたいなら、
そもそもC/C++にこだわる必要もなくね?人海戦術に向いた言語なら色々とあるんだし
- 707 :名前は開発中のものです。:2014/11/20(木) 18:38:32.43 ID:5jfsrVJn.net
- >>705
まあ、少数精鋭で作られたゲームの方が良いゲームは多くね?
人数が増えれば増えるほど、どうしても軸はプレまくるからな
- 708 :名前は開発中のものです。:2014/11/20(木) 19:31:14.46 ID:iI+OSFLH.net
- 少数精鋭もやり過ぎるとこうなる
Appleのソフトウェアの品質が次第に低下している理由は? - GIGAZINE
http://gigazine.net/news/20141016-apple-software-quality/
Appleは世界的な巨大企業ですが、同レベルの企業に比べるとはるかに小さなソフトウェアチームを意図的に構成しています。
これは「たくさんのB級プレイヤーを雇用するより、少しのA級プレイヤーを雇用する方が好ましい」というスティーブ・ジョブズの方針によるもの。
ジョブズが亡くなった後もこの方針は続いていますが、「最上級の人材」だけでチームを構成するため、人手が足りないチームへ別チームの人材がヘルプに入ることがあります。
最高の人材獲得に挑戦するのは間違ったことではないのですが、キーパーソンのエンジニアがiPhoneチームのヘルプに入っていたために、OS X Leopardのリリースが遅れた、という事態も起こっています。
- 709 :名前は開発中のものです。:2014/11/20(木) 19:36:39.53 ID:36zbpl++.net
- ゲームと一緒にされても
- 710 :名前は開発中のものです。:2014/11/20(木) 19:37:10.26 ID:36zbpl++.net
- IDがperl++
- 711 :名前は開発中のものです。:2014/11/20(木) 22:05:42.89 ID:93aHVuNb.net
- そもそも小規模開発なら汎用のゲームエンジン使えばいいしプログラマそんな要らないよな
人が必要になるのは基本的に素材作りだろうし
- 712 :名前は開発中のものです。:2014/11/20(木) 22:16:36.81 ID:xrUP7PKr.net
- そういえば、おソロだとテストがまずいことになりそう
なにしろ、自分はメタデータが頭の中に叩き込まれている少なくとも中級者だ
そこからバランス調整に入ったら初心者がうんざりするゲームになりそう
バグ取りも自分の発想だけだと限界があるし
ま、制作自体には直接関わりない事だけどね
- 713 :名前は開発中のものです。:2014/11/20(木) 23:09:21.65 ID:94t7DNRt.net
- マだけの人海戦術製作やってみたい気もする
でも標準ライブラリが貧弱なC++だと、まずstl, boost, pocoとか
どれを使うかで決裂しそうだな
- 714 :名前は開発中のものです。:2014/11/20(木) 23:47:01.70 ID:XIRb6nJJ.net
- なんか、ただの知ったかぽい
- 715 :名前は開発中のものです。:2014/11/21(金) 00:06:46.12 ID:1pvURVep.net
- boostってまだあったのか。
今だと何の用途につかってるの?
- 716 :名前は開発中のものです。:2014/11/21(金) 00:13:35.21 ID:eEbWn5CX.net
- 標準ライブラリに入れる機能の実験場みたいなものだから標準ライブラリがある限り存在し続けるのでは
- 717 :名前は開発中のものです。:2014/11/21(金) 00:21:11.37 ID:7CnZSeAT.net
- >>715
人それぞれ
C++11対応してくれない環境での同等ライブラリとしてとか、
uBLAS
Geometry
Graph
など標準入りしてないけど有用なライブラリもあるし、
coroutineとかC++11以降にBoost入りしたのもある。
Boost.GeometryはMySQLに使われてたりするよ。
- 718 :名前は開発中のものです。:2014/11/21(金) 03:19:55.68 ID:K9GeSQKw.net
- C++が一番楽しい。
C++11最高だ。
- 719 :名前は開発中のものです。:2014/11/21(金) 07:08:46.35 ID:qV4oLsfC.net
- ゲームプログラマーの求人ってどこで探せば良いの?
- 720 :名前は開発中のものです。:2014/11/21(金) 07:19:13.80 ID:pFBl4fEs.net
- 住んでる地域が東京圏か大阪圏内で無い限りほとんど無い
自分から売り込め、もしくは起業しろ、あるいは同人から始めろ
- 721 :名前は開発中のものです。:2014/11/21(金) 08:02:03.86 ID:KX4IO8pf.net
- ゲーム業界はやりたい人が多い割りに雇用創出効果が薄いから
競争率激しくて経営者もやりたいことやらせてもらえて感謝しろみたいな態度でくるから
激務薄給で使い捨てだよ
- 722 :名前は開発中のものです。:2014/11/21(金) 08:51:37.88 ID:LfVWOyzt.net
- おじいさんたち、板違いの話題は適切な板に誘導して差し上げて
http://wc2014.2ch.net/recruit/
http://kanae.2ch.net/job/
http://kanae.2ch.net/prog/
質問者共々、行ってらっしゃい
- 723 :名前は開発中のものです。:2014/11/22(土) 00:33:56.72 ID:GjARED3K.net
- >>713
>マだけの人海戦術製作
それ楽しそうだね。
テクスチャ、モデリング、効果音も含めて、すべてProcedualに生成するってやつでしょ。
音楽だけは無理か。
- 724 :名前は開発中のものです。:2014/11/22(土) 11:11:14.41 ID:2kOY5/sq.net
- 個人でも最初はそんな感じだけどなー
- 725 :名前は開発中のものです。:2014/11/22(土) 11:27:35.29 ID:UXfM8O3M.net
- >>723
音楽でもMMLのライブラリがあればプログラミングするように作曲が可能
- 726 :名前は開発中のものです。:2014/11/22(土) 12:04:53.88 ID:2kOY5/sq.net
- MMLって聞いてマビノギかよと思ったらMusic Markup Languageだったんだな
Mabinogi Music Languageかと思ってた
- 727 :名前は開発中のものです。:2014/11/22(土) 12:51:58.39 ID:z05T//p3.net
- >>693-695
アイテムを実体処理するとセーブデータ改造が容易になるけどな
昔、ソーサリアンてゲームでアイテム魔法の空を飛ぶ魔法の消費MPを0にした事がある
- 728 :名前は開発中のものです。:2014/11/22(土) 15:25:07.79 ID:2kOY5/sq.net
- チート防止方法って
・リソースファイルを暗号化する
・リソースファイルが改竄されていないかハッシュ値を照合する
・メモリ上の値が書き換えられていないかチェックする
の3つでいい?他にするべきことってある?
スタンドアロンなゲームを想定してる
- 729 :名前は開発中のものです。:2014/11/22(土) 15:28:45.59 ID:4gvnFUCF.net
- 深く考えずにユーザーには改造の自由を与える
- 730 :名前は開発中のものです。:2014/11/22(土) 15:50:11.91 ID:2kOY5/sq.net
- >>729
そのスタンスいいな
githubへのリンクでも添付するか
- 731 :名前は開発中のものです。:2014/11/22(土) 16:53:28.19 ID:5ZWxKn8M.net
- 海外のゲームはそれが普通だね。
オンラインの場合は別だけど
- 732 :名前は開発中のものです。:2014/11/22(土) 17:01:09.64 ID:GtITkLZ+.net
- データを全てXMLやCSVで記述しておいて数値変え放題にする
- 733 :名前は開発中のものです。:2014/11/22(土) 17:02:59.01 ID:ycIYhRSf.net
- 時代はオープンデータ
- 734 :名前は開発中のものです。:2014/11/22(土) 17:31:14.63 ID:2kOY5/sq.net
- それでもハッシュ値は欲しいな
実績「一度もデータを変更せずにクリア」とか
- 735 :名前は開発中のものです。:2014/11/22(土) 18:43:56.35 ID:rQjhf0Yu.net
- 海外はMOD作り放題なゲームも多いな
- 736 :名前は開発中のものです。:2014/11/23(日) 01:04:58.19 ID:4ZBc6dKC.net
- チートを使わないでクリアすると実績だなんて、
なんでそんな当たり前のことを?と変な話にしか見えない俺
っつーか、ハッシュならまずあり得ないだろうが実績ごと改造されそうだよ
- 737 :名前は開発中のものです。:2014/11/23(日) 01:18:05.75 ID:mI42wc3z.net
- そこまでされるようなゲームを作れるのかが問題
- 738 :名前は開発中のものです。:2014/11/23(日) 01:22:28.60 ID:SnMKy+pN.net
- 商業タイトルならともかく個人制作でチート対策なんてかんがえないよな
- 739 :名前は開発中のものです。:2014/11/23(日) 11:11:41.84 ID:+dJYaAUV.net
- でもセーブデータがテキストファイルにcsvで直書きとかだったらプレイする方も萎えるじゃん
- 740 :名前は開発中のものです。:2014/11/23(日) 12:27:51.29 ID:EqABDKyO.net
- 個人制作はチートされてなんぼのレベルだからな。
チートされる規模まで広がるようになってから対策を考えても遅くない。
それ以前にチート対策なんて、
「桃尻にて落ちなんは、心憂かるべしと思ひけり」ってやつだ。
- 741 :名前は開発中のものです。:2014/11/23(日) 12:30:53.64 ID:kaKHHfmS.net
- 一般ユーザーはバックアップ目的でのセーブデータの位置やファイル名は気にするが中身までは気にしない
チート目的ならバイナリかテキストの違いしかない
オンラインでランキングや対戦等他人との接点がある場合には対策したほうが良いけどオフラインは自由にしてやりたい
- 742 :名前は開発中のものです。:2014/11/23(日) 13:56:57.65 ID:82D+n2IC.net
- 中身がテキストでも拡張子を*.savとかにしてあれば普通は開かないよね
まぁチート防止法なら>>728の3つで十分な気がする
メモリ上の数値チェックはしなくてもいいと思うけどww
- 743 :名前は開発中のものです。:2014/11/23(日) 14:02:44.82 ID:+dJYaAUV.net
- ていうか>>728以外に何かある?
リソース抜き出しとか通信盗聴は別にして
- 744 :名前は開発中のものです。:2014/11/23(日) 16:18:46.75 ID:n5OStoXo.net
- ブラウザやランチャーからの起動に限定...とか
- 745 :名前は開発中のものです。:2014/11/23(日) 16:49:33.89 ID:cJk/+EVe.net
- >>741
ほんとこれ。
この意見とまったく同意見だわ。
- 746 :名前は開発中のものです。:2014/11/23(日) 20:40:57.35 ID:4ZBc6dKC.net
- MODはともかく、コンテンツ食い荒らさせても開発者には全くメリットないし
そこまでして公開するくらいなら、むしろ公開せずに自分で楽しむよ
タダで公開している時点でメリットなんてないだって?
この俺が、金やちやほやされるためにゲームを作っていると思っているのかーッ!
(目を泳がせながら)
- 747 :名前は開発中のものです。:2014/11/24(月) 00:38:32.67 ID:8cacGq0B.net
- サーバーにセーブデータ保管
- 748 :名前は開発中のものです。:2014/11/24(月) 10:03:38.23 ID:dzDmH2rP.net
- データ改竄は許しまへんで
- 749 :名前は開発中のものです。:2014/11/24(月) 17:33:44.16 ID:Z/FunYTK.net
- >>740
クソゲー杉てタルいんで、さっさと改造してCGだけ回収してる
改造できない同人ゲーなんてやってられっかよ
- 750 :名前は開発中のものです。:2014/11/24(月) 17:55:20.84 ID:2xrZiHXU.net
- そだね
- 751 :名前は開発中のものです。:2014/11/24(月) 18:39:45.23 ID:zdvI3CUV.net
- そこまでしてcg回収なんかしたいとなると、修羅の国のゲームかな?
修羅の国のゲームは同人であるなしに関わらず基本的にクソゲー
クソゲーでない修羅の国のゲームは希少
- 752 :名前は開発中のものです。:2014/11/26(水) 17:10:13.93 ID:uKd9Te04.net
- 中央のスプライトに隣接しているスプライトを、
中央のスプライトの大きさによって位置を変えられるようにするには、
どのような方法が考えられるでしょうか?
あらかじめ中央のスプライトにフラグを設定しておいて、
その数値によって周りの位置を制御するという方法は思いついたのですが、
どうもマジックナンバーだらけで気持ちが悪いし汎用性が低いのです
- 753 :名前は開発中のものです。:2014/11/26(水) 17:20:11.22 ID:Y1/yNkyi.net
- emun
- 754 :名前は開発中のものです。:2014/11/26(水) 19:59:12.17 ID:AChn1R5P.net
- enum
- 755 :名前は開発中のものです。:2014/11/26(水) 20:02:16.64 ID:/W/8yg6H.net
- nullpo
- 756 :名前は開発中のものです。:2014/11/26(水) 20:23:02.74 ID:utK4NJ2p.net
- ga!
- 757 :名前は開発中のものです。:2014/11/26(水) 20:49:02.86 ID:gy/4zLs8.net
- 隣接の概念があるなら、それぞれのスプライトはパラメータとして「半径」を持っているのでは?
中央のスプライトだけ特別扱いする必要はないんじゃないの?
- 758 :名前は開発中のものです。:2014/11/29(土) 12:17:43.47 ID:RkdSMohZ.net
- http://brbranch.jp/blog/201312/cocos2d-x/cocos2dx_ccscale9sprite/
これかな?
- 759 :名前は開発中のものです。:2014/11/29(土) 12:18:18.60 ID:RkdSMohZ.net
- あやべ、cocos2dxのスレじゃなかった
- 760 :名前は開発中のものです。:2014/11/30(日) 12:30:11.20 ID:2LtupVMk.net
- std::vectorのfrontとsizeとbeginとendとdataの使い分けの見分け方を教えて下さい
- 761 :名前は開発中のものです。:2014/11/30(日) 15:32:55.05 ID:wowBQ4xC.net
- http://www.cppll.jp/cppreference/cppvector.html
https://sites.google.com/site/cpprefjp/reference/vector/data
sizeは要素数取得
beginとendはイテレータ始端と終端取得
frontは先頭要素の参照取得でv[0]と一緒
dataはvectorのデータをただの配列として使いたい時用で&(v[0])と一緒
イテレーターは全部の要素に処理する時とかに使う時が多いけどsizeの数だけ繰り返しとかでも出来るし
使い分けとか考えなくても好きに使ったらいいんじゃない
- 762 :名前は開発中のものです。:2014/11/30(日) 16:30:02.97 ID:9UMHtIHE.net
- イテレータいわゆる反復子を使うと
for_each(ary.begin(), ary.end(), func());
このような感じで書ける、ary がvector<int> であってもいいし、list<int>であってもいい、
最初にlist<int> で、あとでvector<int>に書き直してもfor_eachはそのままで使えるので書きなおす必要はない。
typedef list<int> IntArray;
このようにtypedefしておけば IntArrayを使ってあとでvectorに変えるのも
typedef vector<int> IntArry;
にすればいいだけになるので変更が楽になる。
ただ、ゲームのプログラムだと速度的に最初からvectorに決まってたりする。
dataはstringのc_str()のように、受け取る側が配列ポインタになってる時に使うものだと思う。
C言語のライブラリとかはそのようなのが多いしな。
- 763 :名前は開発中のものです。:2014/11/30(日) 18:07:42.80 ID:2LtupVMk.net
- >>761-762
ありがとう
- 764 :名前は開発中のものです。:2014/11/30(日) 18:49:40.41 ID:09iyr5dN.net
- 最適化で変数が削られる憂き目に遭った・・・。
DirectXMathのXMMatrixPerspectiveFovLHの第2引数に与える、画面のアスペクト比なんだけど、
直前で
float fAspect = VP.Width / VP.Height;
ってな感じで書いてたら、Debugモードだと正常に動作するのに、
Releaseモードだとクラッシュする。
とりあえず、コメントアウトしながら原因箇所を追跡したら、上記のアスペクト比算出箇所に行き着いたわけ。
試しにvolatile修飾子を付けてみたら正常に動作することになったから、
最適化で削られたことが判明したんだけど、これ、どういうときに発生するか知ってる?
今までコンパイラ(VC++)に裏切られたことが一切なくて、信頼しきってただけに、ちょっとショック・・・。
今回は小規模なテストプログラムだから大した影響はなかったんだけど、
大規模で複雑なの組んでるときにこういうのが出ると話がややこしくなって厄介だ。
- 765 :名前は開発中のものです。:2014/11/30(日) 19:08:33.40 ID:6mhBW/fH.net
- 再現手順も説明できずにコンパイラのバグとか言い出す奴の
99%以上は本人のミスだ
- 766 :名前は開発中のものです。:2014/11/30(日) 19:19:20.08 ID:wowBQ4xC.net
- VCのデバッグとリリースで最適化って変わんの?
デバッグビルドってデバッグコード埋め込むだけだと思ってたわ
http://msdn.microsoft.com/ja-jp/library/dykf6bx9.aspx
- 767 :名前は開発中のものです。:2014/11/30(日) 19:28:29.73 ID:3sYJoklf.net
- デフォルトではデバッグビルドのオプション設定は最適化無効になってるみたいね
- 768 :名前は開発中のものです。:2014/11/30(日) 19:28:51.51 ID:6mhBW/fH.net
- デバッグが困難になるからデフォルトでは最適化は無効になる
- 769 :名前は開発中のものです。:2014/11/30(日) 19:37:40.53 ID:mq2znQaR.net
- >>764
その変数が引数としてしか使われてないなら、変数を経由しないで
計算結果を直接スタックに乗せるようになってる、とかかなぁ。消えた原因は。
あんまり関係ない話だけど
つい最近(というか今日)、DirectXMathで躓いたのが
newで確保したXMVECTORの配列が16バイトアラインメントに乗って無くて
SSEのmovapsでアクセス違反が起きるって奴だった。
アクセス違反が報告されたメモリアドレスが「0xFFFFFFFF」ってなってて
どういうこっちゃとしばらく悩んだよ・・・。
- 770 :764:2014/11/30(日) 19:54:39.02 ID:09iyr5dN.net
- >>769
ちょ・・・、今回クラッシュするところの逆アセンブリ結果が、同じくmovapsっす・・・。
floatの引数削られるのと、どう関係あるか分からないけど。
DirectXMathのSSE絡み、ちょっと怖いっすね。
>その変数が引数としてしか使われてないなら、変数を経由しないで
>計算結果を直接スタックに乗せるようになってる、とかかなぁ。消えた原因は。
そうそう、引数にしか使われてないから、ダイレクトにスタックに乗せるのは納得する。
けど、なぜクラッシュw
- 771 :名前は開発中のものです。:2014/11/30(日) 20:14:02.81 ID:mq2znQaR.net
- >>770
movapsはXMMレジスタへ128ビット分のデータを一括転送するSSE命令だけども
メモリ⇔レジスタの転送の場合、メモリ側が16バイト境界に沿っている必要があるのよ。
(movapsのaはalignedのa)
XMMatrixPerspectiveFovLHの戻り値を格納しようとしている変数(XMMATRIX)の
メモリアドレスが怪しい気がする。
XMMATRIXはXMVECTOR4個の塊だし
- 772 :名前は開発中のものです。:2014/11/30(日) 20:25:50.60 ID:mq2znQaR.net
- 追記。
多分、リリースビルドでだけ発生する原因は、速度優先の最適化によって
movups命令(16バイト境界に沿っていなくてもOK、ただし低速)からmovaps(高速)に
使用する命令が置き換えられたからだと思う。
で、多分fAspectにvolatileを付けたら動くってのは
fAspectの分だけスタック使用量が増えるから、格納先変数のアドレスが
16バイト境界に合うようになって、それでエラー落ちしなくなるんじゃないかな・・・
でも「_m128 型の変数は、16 バイト境界に自動的にアラインされます。」ってMSDNには書いてあるから
違う原因かも。
- 773 :764:2014/11/30(日) 21:00:10.04 ID:09iyr5dN.net
- >>771-772
サンクス。
fAspectが増えたことで16Byteアラインしたから通ったとしたら、たまたまで怖い気もw
いずれにせよ、たしかに_m128型使ってる以上、アラインされることは期待できそうだよね。
- 774 :名前は開発中のものです。:2014/11/30(日) 21:49:21.14 ID:3sYJoklf.net
- いつになく勉強になる流れだなw
- 775 :名前は開発中のものです。:2014/11/30(日) 22:42:52.60 ID:wowBQ4xC.net
- アライメントでクラッシュとかデバッグ大変そう
ヒープに確保すんのはやめた方がいいらしいけど
http://msdn.microsoft.com/ja-jp/library/ee418725%28v=vs.85%29.aspx
- 776 :名前は開発中のものです。:2014/12/03(水) 13:17:19.43 ID:Z1yRDwuo.net
- Unityにナビメッシュっていう機能あるけど、内部ではダイクストラ法使ってるの?
- 777 :名前は開発中のものです。:2014/12/03(水) 13:18:24.64 ID:iziS6ZnM.net
- 3回に1回は使ってる
- 778 :名前は開発中のものです。:2014/12/03(水) 21:11:51.59 ID:OgMzERcn.net
- ファイルの読み書きのやり方って、
・C標準のfopen系
・C++標準のfstream系
・WinAPIのCreateFile、ReadFile、WriteFile
みたいに、たくさんあるけど、使い分けってどうしてる?
- 779 :名前は開発中のものです。:2014/12/03(水) 22:44:11.09 ID:TXwtBb38.net
- WinAPI系に近いライブラリを作る場合はCreateFile、ReadFile、WriteFile、
普段使いのC++で機種依存しないライブラリはstream系
C系のライブラリで開発汁ときはfopen系
いずれにせよメインプログラムから直接ファイル操作関数は使わなーい
- 780 :名前は開発中のものです。:2014/12/04(木) 01:02:24.18 ID:YkojZjJM.net
- Windows環境と仮定して。
C標準を使うとランタイムライブラリが必要になるので却下。
今どき使うのはオッサンとバカだけ。
C++も結局はWinAPIの薄いラッパに過ぎないので、
基本的にはWinAPIを呼ぶのが正解。
- 781 :名前は開発中のものです。:2014/12/04(木) 03:01:38.93 ID:ClGYe+T3.net
- CRT使わないなんて、よほど節制しないとつらくないか?
try-catchを使っただけでもCRTが要るだろ?
あと、Windowsなら、よく使うのはAPIの関係でIStream系が多いなぁ。
- 782 :名前は開発中のものです。:2014/12/04(木) 03:07:11.75 ID:iZaOw4vq.net
- C++だってランタイム必要なのに変わりないような
- 783 :名前は開発中のものです。:2014/12/04(木) 08:11:19.48 ID:L+71L5pW.net
- ランタイム必要な記述ってどういうのがある?
例外、IO、メモリ関係とかはランタイム必要そうだけど
その辺全部OSのAPIで済ますの?
- 784 :名前は開発中のものです。:2014/12/04(木) 08:35:11.34 ID:y13HpW+M.net
- >>780の常識は世界の非常識
- 785 :名前は開発中のものです。:2014/12/04(木) 09:42:58.76 ID:ClGYe+T3.net
- >>783
昔のATLコンポーネントで、実行ファイルを小さくするためにランタイム無しってのはたまに見かけた。
IOやメモリ関係は、Win APIで代替が利く。 例外は使わないか、SEHやRAIIで代用。
ただ、浮動小数やstd::*を使えないし、かなりの制限を受けるよ。
- 786 :名前は開発中のものです。:2014/12/04(木) 10:01:50.12 ID:Eg8ibX6r.net
- 要件も確認しない実行ファイルサイズ至上バカが、生産性もクロスプラットフォームも捨ててWin32APIを直接使うって主張してるだけだな。
そっちの方がオッサンくさい。
- 787 :名前は開発中のものです。:2014/12/04(木) 19:29:15.66 ID:tgdEpz3N.net
- 自分はRAIIなfstream系が好みだな。
WinAPIでも、
shared_ptr<void> pFile( CreateFile( ... ), CloseHandle );
でRAIIできるし、WinAPIならメモリマップドファイルが使えるから、Seekすることが多い用途で使う。
fopen系でも、上記要領でRAIIできるけど、
fopenだと、VC++でfopen_s使えって警告がウザいし、1行でスマートに書けないから嫌い。
でも、fprintf、fscanfは便利なんだよなぁ・・・。
- 788 :名前は開発中のものです。:2014/12/04(木) 21:52:37.38 ID:BSnl4VWG.net
- 状況によって使い分けてるな。なので>>778に近い気がする
ファイル入出力に近いモジュールは一度組んだらほぼ手を加えないので
環境依存のAPIを使ってても、次に使う時は細かいこと忘れちまってるな
オッサンだな
- 789 :名前は開発中のものです。:2014/12/04(木) 21:53:54.27 ID:BSnl4VWG.net
- ×>>778 ○>>779
- 790 :名前は開発中のものです。:2014/12/06(土) 04:00:55.39 ID:X/U/zDqc.net
- まとめブログが世論誘導加速中 閲覧数と影響力が大きいのでまとめブログにもコメント宜しくお願いします。
http://jbbs.shitaraba.net/bbs/read.cgi/news/5097/1275245794/96 ←
- 791 :名前は開発中のものです。:2014/12/07(日) 13:13:24.02 ID:mFsIvomy.net
- クラスのメンバのvector変数にpush_backをしたのに、push_backしたメンバ関数が終了すると
他のメンバ関数でsizeが0になるんですが、vectorにそういう感じの仕様ってあるんですか?
http://codepad.org/QE4clISm
vector変数の中身を消す処理はしてません
- 792 :名前は開発中のものです。:2014/12/07(日) 13:40:07.34 ID:9LyEQ/ju.net
- http://melpon.org/wandbox/permlink/PGTC7VqZBylSFl9m
- 793 :名前は開発中のものです。:2014/12/07(日) 14:36:04.47 ID:5KYRoGrU.net
- デストラクタが走ってからsize()を呼んでるとかそんなオチだろうな
- 794 :名前は開発中のものです。:2014/12/07(日) 14:39:37.63 ID:hyValMsU.net
- どうでもいい質問で悪いけど、範囲for文とstd::for_eachってどっち使ってる?
- 795 :名前は開発中のものです。:2014/12/07(日) 15:34:57.43 ID:EqvPSafZ.net
- 範囲for
- 796 :名前は開発中のものです。:2014/12/07(日) 16:06:32.38 ID:6S6vavTT.net
- 範囲for
- 797 :名前は開発中のものです。:2014/12/07(日) 16:43:30.16 ID:dMVqqTm9.net
- 範囲for
C#やVB使う場合はfor each使うけどね
C++では扱いづらい
- 798 :名前は開発中のものです。:2014/12/07(日) 16:52:24.55 ID:dMVqqTm9.net
- わざわざ関数名考えないといけないから面倒なんだよな
- 799 :名前は開発中のものです。:2014/12/07(日) 16:56:54.79 ID:9LyEQ/ju.net
- ラムダのことも忘れないであげてください
- 800 :名前は開発中のものです。:2014/12/07(日) 17:45:42.30 ID:e6dpx8ym.net
- 範囲for!そういうのもあるのか
イテレーター使えればなんでもいけるのこれ
- 801 :名前は開発中のものです。:2014/12/07(日) 17:57:50.11 ID:fL0IRO+A.net
- 範囲for、途中でインデクスが欲しくなって、
結局普通のforになることが多い。
- 802 :名前は開発中のものです。:2014/12/07(日) 18:19:55.91 ID:6S6vavTT.net
- >>801
あるあるw
でもそうでもない限りは記述が美しいから、できる限り使うようにしてるな。
- 803 :名前は開発中のものです。:2014/12/07(日) 20:32:17.28 ID:heuc+ktl.net
- ランダムアクセスイテレータならdistanceで取ればいいだけ
- 804 :名前は開発中のものです。:2014/12/07(日) 20:40:01.29 ID:6S6vavTT.net
- >>803
知らんかったw
すげーw
さんきゅー。
- 805 :名前は開発中のものです。:2014/12/07(日) 21:00:39.07 ID:KCbAkKfJ.net
- std::for_each で being() end() を書かずに済む方法ってあったっけ
範囲forのほうがむしろタイプ数が少ないような
- 806 :名前は開発中のものです。:2014/12/07(日) 21:44:37.07 ID:0+t1yYxF.net
- BOOST_FOREACHを使うのが一番良いのでは
- 807 :名前は開発中のものです。:2014/12/08(月) 00:26:35.24 ID:Tkb5ImKO.net
- boost使っていいんなら
boost::for_eachというのもある
- 808 :名前は開発中のものです。:2014/12/08(月) 01:42:50.74 ID:/dWjo4ra.net
- distanceはrandomの時はO(1)それ以外はO(n)か
考えてみれば当たり前だけどこれvector以外のコンテナで全ての要素でやったら計算量O(n2)になるな
こういうのちゃんと覚えておかないと使い所間違えそう
- 809 :名前は開発中のものです。:2014/12/10(水) 15:07:51.95 ID:fIQTJgum.net
- 市販の3DアクションゲームってC++で作られてるの?
それともUnityとかアンリアルエンジンとか?
- 810 :名前は開発中のものです。:2014/12/10(水) 19:05:50.57 ID:UFn2Nat6.net
- ほとんどC++やJAVA等でプログラミングしてると思うが、
最近は一部エディタでもコンシューマ開発用キットを出してる
エディタ系はアクション系特化が多いので、
もしかしたらエディタ製もあるかもしれない
- 811 :名前は開発中のものです。:2014/12/10(水) 20:57:58.95 ID:WqzdIXuz.net
- それともUnityって何だよ
Unityだってコア部分はC++で作られているだろ
- 812 :名前は開発中のものです。:2014/12/10(水) 21:08:38.95 ID:OgtEYajR.net
- そういう意味じゃねえだろ
- 813 :名前は開発中のものです。:2014/12/10(水) 21:17:30.67 ID:Z1DuKoHt.net
- エディタは内部で独自に言語を作っているところも多いし ほとんど使わないのもある
そもそもプログラミング言語使わずにゲームが作れるのが一番の売りだし
- 814 :名前は開発中のものです。:2014/12/10(水) 21:19:34.07 ID:WqzdIXuz.net
- Unityじゃない所は
そう言うミドルウェアにライセンス料払いたくないか
全部自分でコントロールしたいから非オープンソースが嫌な人達だろう
- 815 :名前は開発中のものです。:2014/12/10(水) 21:21:37.53 ID:TxBmxmRH.net
- >>809は言語とゲームエンジンの区別がついてないのだろうな、とは俺も思う
- 816 :名前は開発中のものです。:2014/12/10(水) 21:26:51.59 ID:PG4tDcoQ.net
- フルスクラッチか否かって話じゃね
- 817 :名前は開発中のものです。:2014/12/10(水) 21:27:36.02 ID:Z1DuKoHt.net
- 言語使って自分で組んでるのかエディタ使って作ってるのか聞きたかったんだろ?
で、商業でやってるところはだいたい自分で書いてるとすでに答えられてる
- 818 :名前は開発中のものです。:2014/12/10(水) 21:34:16.87 ID:FC5BkzvK.net
- バイナリデータとかバージョン管理が出来ないから嫌すぐるw
- 819 :名前は開発中のものです。:2014/12/10(水) 21:35:32.23 ID:X2qHCJlA.net
- 難しかったり面倒な部分をエンジンやライブラリに押し込むのは良くあること。
それを簡単なC++から使うか、適当なスクリプト言語から使うかの差しかない。
- 820 :名前は開発中のものです。:2014/12/10(水) 21:48:54.83 ID:Z1DuKoHt.net
- バイナリデータなんか直接扱うことはほぼないぞ…
それをしないためのプログラミング言語なんだし
バージョン管理は商業で作るところならまず間違いなく専用のソフトを入れているし、
個人でやるなら中〜大規模な作品でもなければ多分なくても管理できる
何人か集まって作るならその時導入を検討すればいい
- 821 :名前は開発中のものです。:2014/12/10(水) 22:03:07.95 ID:FC5BkzvK.net
- エディタってのが専用のバイナリを直接変更するものだと思って書いた
バージョン管理って個人的なのでも結構使うなあ・・・
ソースに変なコメントとか残したくないんだよねw
- 822 :名前は開発中のものです。:2014/12/10(水) 22:21:09.59 ID:6ysuSswG.net
- 男なら全部C++
- 823 :名前は開発中のものです。:2014/12/10(水) 22:22:55.40 ID:WqzdIXuz.net
- Unityはバージョン管理システムが組み込まれてるし
svn等の外部のバージョン管理システムも使いたければ使える
- 824 :名前は開発中のものです。:2014/12/10(水) 23:18:34.81 ID:SWjWjl7/.net
- コードにコメントでいつ追記とか書くの鬱陶しいよな
場合によっては編集前のコードをコメントで残すとかいうルールしいてることもある
もうアホかと
- 825 :名前は開発中のものです。:2014/12/10(水) 23:36:58.77 ID:FC5BkzvK.net
- うん
Gitだとサーバーとか立てなくても気軽にローカルでリポジトリ
作れたりとかできちゃうから楽だわ
作業内容はソースにコメントで残すんじゃなくコミットログに
押し込めるし時系列で追えるしね
- 826 :名前は開発中のものです。:2014/12/11(木) 00:13:34.16 ID:RhkXQVIG.net
- UnrealEngine4はC++でプログラミングするんだぞ
- 827 :名前は開発中のものです。:2014/12/11(木) 00:16:26.40 ID:6Drf6QBa.net
- bitbucketにリモートリポジトリ取っておけば優秀なバックアップに。
ちょっと思い付いたらブランチ切って気が済むまで弄り倒して
上手く行ったらそのままマージ、
ダメだったら元のブランチをチェックアウトすれば元通り。
今はGUI付きのクライアントもあるし有り難い時代だ
- 828 :名前は開発中のものです。:2014/12/11(木) 02:04:41.77 ID:vflPKXfm.net
- ゲーム会社の求人見てたら普通に
Unityやcocos2dの経験者歓迎とか書いてあるぞ
商用で普通に使われてるんだと思うんだが
- 829 :名前は開発中のものです。:2014/12/11(木) 08:52:12.08 ID:6p4P8aMh.net
- 大手ならC/C++で独自ツール作るけど
弱小は既存ツール使うしか選択肢がない
- 830 :名前は開発中のものです。:2014/12/11(木) 09:22:11.45 ID:HPqpSaB4.net
- 1つでも使いこなせれば応用が利くから教育の手間が省けるってことじゃないの?
- 831 :名前は開発中のものです。:2014/12/11(木) 13:18:32.61 ID:2JpT6opC.net
- >>817はどこの世界の話か知らないが
Unity使った商業作品なんて山ほどあるだろ
>>829
いやだからどこの世界の話だよ。
- 832 :名前は開発中のものです。:2014/12/11(木) 19:04:56.48 ID:aRGwjS4y.net
- 「大手は既存ツールやエンジンを使わない」とは言ってないと思うぞ
- 833 :名前は開発中のものです。:2014/12/11(木) 19:10:00.11 ID:b4/DV/vl.net
- 結局潰しがきかないのよね、開発エンジンって
それでも大抵の人は困ることはないだろうけど
- 834 :名前は開発中のものです。:2014/12/11(木) 21:50:30.14 ID:jqIw6zJe.net
- 日本で汎用のゲームエンジンってソシャゲくらいしか思いつかんな
海外だとアンリアルエンジンで作った大型タイトルあるぽいんだが
http://ja.m.wikipedia.org/wiki/Unreal_Engineを採用したゲームソフト一覧
- 835 :名前は開発中のものです。:2014/12/11(木) 22:59:37.83 ID:aRGwjS4y.net
- 汎用ってゲームジャンルに対しての汎用じゃなくて、
いろんなユーザ(団体)が利用できるという意味での汎用?
エロゲやアマチュアまで含めれば、テキストゲーム系エンジンやツクール等も結構多そうだが。
- 836 :名前は開発中のものです。:2014/12/11(木) 23:14:39.27 ID:jqIw6zJe.net
- ライセンス販売してるようなゲームエンジン
UnityとUE位しか知らんけど
2Dもこういうエンジンってなんかあるんかな
- 837 :名前は開発中のものです。:2014/12/11(木) 23:22:19.61 ID:FC/EOQl8.net
- >>836
・・・
cocos2d-x
http://peace.2ch.net/test/read.cgi/gamedev/1390136237/
- 838 :名前は開発中のものです。:2014/12/11(木) 23:43:01.37 ID:jqIw6zJe.net
- cocosはエンジンじゃなくてフレームワークだし
ソシャゲではよく使われてるみたいだけど
- 839 :名前は開発中のものです。:2014/12/12(金) 00:23:08.10 ID:QnblLndC.net
- 開発エンジン単体では潰しがきかなくても
いろんな開発エンジンを次々使いこなせるだけの柔軟さと適応力は充分潰しが利くと言えると思う。
- 840 :名前は開発中のものです。:2014/12/12(金) 02:25:38.84 ID:bDxMroSG.net
- それだけの適応力があるならそれ使って言語習得した方が早そうだ
独自仕様のゲーム作るなら特に
- 841 :名前は開発中のものです。:2014/12/12(金) 07:21:28.86 ID:o+Ocs+h7.net
- エンジン使うのと作るのとじゃ大違いでしょ
エンジン使いこなせるって言ってもエディタ使って効率的に作れるだけでプログラマとしてはスクリプタレベルよ
- 842 :名前は開発中のものです。:2014/12/12(金) 12:34:20.78 ID:wXPiKRYS.net
- 潰しが効くって何について言ってるんだ?
何でも自前で作るのが良いとは限らないだろ
- 843 :名前は開発中のものです。:2014/12/12(金) 13:11:01.77 ID:so0Qz3P5.net
- そもそもゲームエンジン使ったからといって中のコードに触れない訳じゃないし。
何でもかんでも自分で書いて糞のようなコード量産するより、広く使われているゲームエンジンの良い設計のコードに触れる方が為になる。
- 844 :名前は開発中のものです。:2014/12/12(金) 13:27:08.97 ID:evwzVpBf.net
- まぁ、デキは別にして、自分でスクラッチで書いたところが多いほど達成感も大きいw
- 845 :名前は開発中のものです。:2014/12/12(金) 16:01:25.41 ID:v/KVbnR1.net
- Unityって物理演算とかナビメッシュとかあるけど、あれってC++でも出来るの?
- 846 :名前は開発中のものです。:2014/12/12(金) 17:38:37.97 ID:cemAAiyO.net
- >>845
できますん
- 847 :名前は開発中のものです。:2014/12/12(金) 18:39:21.32 ID:ntY+D6GU.net
- 他人のコードに任せっぱだと、複雑なデータ構造とか作れなくね?
- 848 :名前は開発中のものです。:2014/12/12(金) 19:46:05.18 ID:KvfRzLEl.net
- 俺は作る必要ないんで
- 849 :名前は開発中のものです。:2014/12/12(金) 20:17:56.66 ID:6Y7Yxnc1.net
- 凡百の人間で終わりたくないな、俺は
- 850 :名前は開発中のものです。:2014/12/12(金) 20:19:28.11 ID:evwzVpBf.net
- 俺も。
- 851 :名前は開発中のものです。:2014/12/12(金) 20:48:58.45 ID:s0rRP3Zy.net
- 他人に読めるコードは書いてねw
- 852 :名前は開発中のものです。:2014/12/12(金) 21:30:09.86 ID:EW3P8d8T.net
- 可読性が低すぎて自分にすら読めないコードには、
そこらのサイトに書いてある簡単なテンプレコードほどの価値もないからな…
- 853 :名前は開発中のものです。:2014/12/12(金) 21:41:45.52 ID:KfzBrrjx.net
- まあ他人に読ませる必要がなければ好きにすればいいでしょ
自分で読めないのは論外だけど
- 854 :名前は開発中のものです。:2014/12/12(金) 22:33:35.88 ID:evwzVpBf.net
- 一ヶ月後の自分は他人と同じ
- 855 :名前は開発中のものです。:2014/12/12(金) 23:05:56.51 ID:KfzBrrjx.net
- ならその一ヶ月後の自分用に読めるコーディングにするべきだな
いずれにしても自分で読む気も起きないようなコードはただのゴミ
- 856 :名前は開発中のものです。:2014/12/12(金) 23:44:33.51 ID:b4Xh27MQ.net
- 良い設計のライブラリに触れる事は自分がライブラリ書くときの糧になるだろ?それと同じ事だよ。
そのライブラリを深く理解する事がないとか、ライブラリになるようなものを書くことがないというのであれば、それだけの資質だったということ
- 857 :名前は開発中のものです。:2014/12/12(金) 23:59:52.22 ID:EW3P8d8T.net
- C++使ってる人でライブラリを使わない人なんてこの世にいるのか?
よほど天才的なプログラミングの素質でもなければソフト作りのはるか手前で地面に転がるぞ
っつーか、ライブラリ製作自体がソフト製作に近いし
- 858 :名前は開発中のものです。:2014/12/13(土) 06:34:13.77 ID:/sKItXqV.net
- フルスクラッチ派と流用派の言い争いか
まあ、適材適所じゃね?
今更ゲーム製作でデータ圧縮や暗号化、組み込みスクリプトのコードを書く奴は滅多にいないだろ
書いたけどな、俺は、スクリプトを
けど、ゲーム製作での一番のキモは独創性だろ
そんな所は自分で書くしか方法が無いんだよ!
独創性の無い、ありふれたゲームを作りたいなら、好きに流用すればいいさ
- 859 :名前は開発中のものです。:2014/12/13(土) 10:06:03.65 ID:KmIl68fQ.net
- 読めるコードを書く能力より、
どんなコードでも読める能力の方がいい。
- 860 :名前は開発中のものです。:2014/12/13(土) 10:33:09.68 ID:GVgS9kEW.net
- >>859
読めるコード書けないとチーム開発で役に立たないじゃん
リバースエンジニアリング専門でやんの
- 861 :名前は開発中のものです。:2014/12/13(土) 11:10:08.60 ID:vJXa5IWH.net
- このスレ、プログラマーが複数人開発の環境の人、居るの??
- 862 :名前は開発中のものです。:2014/12/13(土) 11:19:10.70 ID:KmIl68fQ.net
- 読める具合が数値化できればいいのだけど。
何書いても読めない人はいるわけで。
- 863 :名前は開発中のものです。:2014/12/13(土) 11:28:25.00 ID:A651+XDE.net
- >>858
すげーな。
実力派だな。
やっぱ自分で書くのが一番気持ちいいな。
基本的には一人で全部組んでるな。
生産性は別にしてw
- 864 :名前は開発中のものです。:2014/12/13(土) 11:46:26.04 ID:OLxz298b.net
- ダーティーなコードを読む能力ついでにクリーンコードに書き直す能力もあった方がいいな
まあlint通してからやれば比較的楽だが
- 865 :名前は開発中のものです。:2014/12/13(土) 12:02:01.67 ID:cTfiogfq.net
- enum(エナム)
struct(ストラクト)
const(コンスト)
yield(イヨールド)
extern(エクスターン)
explicit(エクスプリクト)
sizeof(サイズオフ)
- 866 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 12:42:15.70 ID:GVgS9kEW.net
- enumえにゅうむ
yieldいーるど
exturnいくすたーん
explicitいくすぷりしっと
sizeofさいずおぶ
- 867 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 12:46:53.80 ID:YQCx+6st.net
- ×exturn
○extern
- 868 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 12:47:23.37 ID:GVgS9kEW.net
- oh misstake
- 869 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 12:47:27.98 ID:vmsxYpAR.net
- いや読むってのは音読することじゃないから
- 870 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 13:34:00.06 ID:cTfiogfq.net
- 「ある画像が透明になりきったら、画面を別の画面に遷移する」という処理をしたいんですけど
その「ある画像」の不透明度に依存して画面遷移を操作してもいいんでしょうか?
・その画像の不透明度は他で操作されない
・SetOpacityの内部で0以下255以上の数値はそれぞれ最小値最大値に正規化される
という環境であるものの、減少し続ける値を等価演算子で比較したりするのは、ゲームを作り慣れてる人から見るとどうなのかなと
それに、画面に複数ある内の1つのパーツでしかない画像に画面が依存するのはオブジェクト指向?的にはどうなんでしょうか?
Scene::update(){
if(image->GetOpacity() == 0){
//遷移する
}else{
image->SetOpacity(image->GetOpacity()-15);
}
}
- 871 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 13:39:12.16 ID:A651+XDE.net
- >>870
透明度を直接評価するんじゃなくて、
もう少し抽象的に、遷移準備完了状態、みたいなものを評価したら汎用的じゃない?
- 872 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 13:54:47.72 ID:cTfiogfq.net
- >>871
こんな?感じでしょうか
違和感すっきりしたんでこれでやってみます、ありがとう
Scene::update(){
if(image->GetOpacity() == 0){
transitionFlag = true;
}else{
image->SetOpacity(image->GetOpacity()-15);
}
if(transitionFlag){
//遷移
}
}
- 873 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 15:13:37.37 ID:ZiMlwiS0.net
- スレ流し読みしてたらフルスクラッチ云々のせいで乾燥肌が痒くなってきた
フルスクラッチ派:「あぁ^〜痒いところに手が届くんじゃぁ^〜」(バリバリ
- 874 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 18:29:40.45 ID:OLxz298b.net
- まー確かに自分の都合でどんどん改変できるしなあ
- 875 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 20:39:35.80 ID:8y/GDHu5.net
- 何度も言うが、初心者は大抵の場合自作ライブラリが完成する前に力尽きるからな
ある程度ガリガリ書けるようになるまで絶対に真似するんじゃないぞ!
- 876 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 20:59:49.32 ID:xmg5RhiV.net
- ライブラリ作るほうが楽しい
- 877 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 21:24:26.17 ID:ht1CXKxj.net
- 車輪の再発明はしないとか言ってるけど、ライブラリ作らないやつの技術力は総じて低いしな
- 878 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 22:34:29.96 ID:ZiMlwiS0.net
- おじさんはいつも即売会で一旦真っ白な灰になって意欲が回復したら
しょぼしょぼとリファクタリングだなぁ…そのサイクルを繰り返す内に
ライブラリやら何やらが自然と充実していったよ
凡人だから知見の獲得は経験の積み重ねによるところが大なんだよねぇ
- 879 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 22:37:32.08 ID:8y/GDHu5.net
- しかしむやみに作るとscanfの二の舞に
あのくらいの代物詰め込んだライブラリを作るなら他人の作った物使って下さい、頼むから
元々多くの人に使われる予定がなかったからなのか、
超がつくくらい初期の関数のせいなのか、あの関数欠陥が多すぎ
一体何に使う予定だったんだろうか?
- 880 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 23:06:20.95 ID:A651+XDE.net
- >>878
ゲーム売ってるんだ。
すごい。
自分の作ったゲームをプレイしてもらうのって、やっぱ即売会がいいの?
ネットでそういう場とかないのかな?
最近だと、ニコニコの自作ゲームコンテストみたいなのかな?
- 881 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 23:31:59.05 ID:MCAEResE.net
- >>880
DLSiteとかDMMとか、いくらでもあるが?まあエロや萌えに偏ってるきらいはあるが
- 882 :名無しさん@そうだ選挙に行こう:2014/12/14(日) 02:35:05.98 ID:9YbZbvSi.net
- scanf詳しく
- 883 :名無しさん@そうだ選挙に行こう:2014/12/14(日) 09:49:32.25 ID:BC24ajZK.net
- 呼び出すだけでコマンドラインでインタラクティブ いやっほぅ! の優れものだぜ
元々プロ中のプロしか使わない前提だけどな
前提をひっくり返すなら中級者以下がCを使うこと自体がおかしい
- 884 :名無しさん@そうだ選挙に行こう:2014/12/14(日) 11:18:28.43 ID:V/uzlPBv.net
- scanfは超初学の頃に学んだとき以外触った記憶がないな
コマンドラインでインタラクティブなんてシェルで十分だし
- 885 :名無しさん@そうだ選挙に行こう:2014/12/14(日) 15:09:32.61 ID:L+QkNmy7.net
- >>880
おじさんは古型なので流行りの頒布方法とかよくわからないけど
言いたかった事は、凡人なら頒布(他者に晒すor他者の評価を聞く
過程)を伴う経験のサイクルは大切だということ。PDCA、反復型
身近な友人同士でも即売会でも何でもいいと思うよ
- 886 :名前は開発中のものです。:2014/12/17(水) 07:39:05.49 ID:AgN/4Z5H.net
- UnityってNetworkクラスとかNetworkViewクラスとかあるけど、あれ使うとMMOとか作れるの?
- 887 :名前は開発中のものです。:2014/12/17(水) 09:32:33.84 ID:4MvBwvFG.net
- Muchi Muchi Oppaiか、もちろんだ
- 888 :名前は開発中のものです。:2014/12/17(水) 10:25:45.45 ID:/fBBXLJf.net
- スレチ
- 889 :名前は開発中のものです。:2014/12/17(水) 12:10:44.24 ID:H3GRnYo+.net
- 社員乙
- 890 :名前は開発中のものです。:2014/12/20(土) 19:07:18.57 ID:Chph+5fV.net
- スタックを使うメリットとヒープを使うメリットって何?
- 891 :名前は開発中のものです。:2014/12/20(土) 20:02:00.84 ID:keBzJKTR.net
- この処理ではこっちを使う、この処理ではあっちを使う…って、
ほぼ自動的に決まるから、あんまりメリット/デメリットを意識することって無いと思う。
- 892 :名前は開発中のものです。:2014/12/20(土) 21:32:50.60 ID:hNo8GLbS.net
- 開放忘れを気にしなくていいかどうかくらいじゃないの?
ただスタックはあくまで一時的なものって意味合いが強くて、
容量制限があるからあんまりでっかいものをガンガン作れないってのと、
あとCPUキャッシュ的に有利ってのがあるけど、
まあ>>891の言うように実際使うときははあんまりメリット・デメリットを意識することも無いと思う
- 893 :名前は開発中のものです。:2014/12/21(日) 03:38:59.26 ID:tJq5gWK6.net
- スタック
・レジスタの値を書き換えるだけでメモリ確保されたことになるので比較的速い
・変数のスコープが抜けた時に自動的に解放される
ヒープ
・スタックには確保できない大きな領域を使える
・確保するサイズを実行時に動的に決定できる(スタックでもできなくはないけど)
・スコープを跨いだ寿命の長いメモリ領域として使用できる
あとなんかあるかな
- 894 :名前は開発中のものです。:2014/12/21(日) 11:16:24.87 ID:UoMqn2et.net
- スタックとヒープってなんだ?
調べてみたら自動変数がスタックでnew演算子を使うのがヒープって書いてあるけどあってるの?
- 895 :名前は開発中のものです。:2014/12/21(日) 11:18:03.73 ID:cF9cgol+.net
- QtのクラスはRAIIの考え方に基づいていて
メモリ解放が殆ど自動化されているから
ヒープ確保でも単純ミスでメモリリークすると言う事が少ない
- 896 :名前は開発中のものです。:2014/12/21(日) 11:43:00.73 ID:UoMqn2et.net
- Javaみたいに後でまとめてメモリ開放するでもなく、
参照が0になったらその場で開放してくれる言語ってないの?
スマポ利用するとかじゃなくて言語レベルで。VM無いと無理なのか?
- 897 :名前は開発中のものです。:2014/12/21(日) 12:12:25.01 ID:ImGMMbuW.net
- C#
- 898 :名前は開発中のものです。:2014/12/21(日) 12:18:34.78 ID:cF9cgol+.net
- なぜそこまでGCを嫌う?
最近のVMのGCはかなりうまくやってくれていると思うけど
>>897
(゚Д゚)ハァ?.NETはGCするだろ
- 899 :名前は開発中のものです。:2014/12/21(日) 12:20:14.63 ID:xV1M/iBe.net
- >>896
swift
ARC有効にしたObjective-C
参照カウントだけだと弱参照するところをどうやっても意識する事になるから流行らないんだろうよ。中途半端だから。
- 900 :名前は開発中のものです。:2014/12/21(日) 12:57:51.36 ID:IwHuX+Tw.net
- >>899
swiftは今っぽい構文なだけで、その辺りは15年前レベルだよな。
参照カウント + 循環参照用のGCはスクリプト言語ならあるな。 PythonとかSquirrelとか。
クロージャをサポートすると、循環を避けるのは難しい。
- 901 :名前は開発中のものです。:2014/12/21(日) 14:04:19.84 ID:tJq5gWK6.net
- http://seesaawiki.jp/w/author_nari/d/GC
以前どっかで教えてもらったGCの各アルゴリズム(とそれを実装してる主な言語)をまとめてるサイト
結構勉強になった
見ていて、C++上で既存のデータ構造との親和性を保ちながら実装するのは無理そうだなーとも感じた
- 902 :名前は開発中のものです。:2014/12/21(日) 14:05:13.03 ID:tJq5gWK6.net
- あ、ちょっと訂正
× 実装するのは無理そうだなーとも感じた
○ 実装するのは俺には無理そうだなーとも感じた
- 903 :名前は開発中のものです。:2014/12/21(日) 17:21:30.42 ID:3dyKCo+m.net
- ガベコレって使いづらい印象付きすぎちゃったもん
- 904 :名前は開発中のものです。:2014/12/23(火) 01:05:19.57 ID:UuPEmr1n.net
- バカにはそういう印象付いちゃったよね^^;
しかもバカって一度持った印象を絶対に改めないから…
- 905 :名前は開発中のものです。:2014/12/23(火) 20:19:18.60 ID:y5yR41zs.net
- デストラクタで十分
- 906 :名前は開発中のものです。:2014/12/23(火) 22:15:26.87 ID:I+Smn/JJ.net
- デストラクタ(ファイナライザ)はリソースを解放するもので
いつデストラクタを呼ぶかを自動化するのがGCなんだよなぁ
- 907 :名前は開発中のものです。:2014/12/23(火) 22:25:27.90 ID:IjLiTo3j.net
- shared_ptrが標準化され、RAIIが一般的になった昨今、
ガベコレの意義が分からない。
- 908 :名前は開発中のものです。:2014/12/23(火) 23:15:42.17 ID:PQqq+vmb.net
- スレッド使ってたら生のデストラクタは使えないし、
sharedは循環参照に気を使わないといけないのがなぁ
- 909 :名前は開発中のものです。:2014/12/24(水) 04:46:42.87 ID:INaba3Bc.net
- 生のデストラクタってなんぞ…
- 910 :名前は開発中のものです。:2014/12/24(水) 09:59:07.80 ID:+KNBOnw3.net
- おそらく「スタック上には確保できない」って言いたいんだろう。
スコープを抜けた後も別のスレッドで使われるから。
- 911 :名前は開発中のものです。:2014/12/24(水) 19:08:44.28 ID:JqKQyI9r.net
- GC「後で掃除しときますんで」
ぼく「これもやっといて」
GC「あ、すいません、今掃除してるんで」
ぼく「今すぐ処理してほしいんだけど」
GC「あと20分ぐらい待ってください」
ぼく「は?処理できない・・・」
こんな印象
- 912 :名前は開発中のものです。:2014/12/24(水) 23:09:56.90 ID:mC2vVuxE.net
- 世代別GCなめんな
- 913 :名前は開発中のものです。:2014/12/25(木) 00:07:59.44 ID:GYUw7kdq.net
- >>910
RAIIと関係なくね?流れ的にRAIIでは対応出来ないケースを挙げたように読めるんだけど。
- 914 :名前は開発中のものです。:2014/12/25(木) 00:11:13.27 ID:MJlq1Aj4.net
- 「生のデストラクタ」なんて謎の用語を使うようなやつが、「流れ」を読めていると思うのか?
- 915 :908:2014/12/25(木) 00:51:14.98 ID:0+lNtng/.net
- >>910
ちょっと違う
スコープを抜けたときに普通にデストラクタが呼ばれるものを「生」と、
スマートポインタ等で使う工夫したデストラクタと区別するために言ってみた
>>914
生のポインタとスマポがわかるなら適当に空気嫁や
- 916 :名前は開発中のものです。:2014/12/25(木) 01:24:40.70 ID:C10OwjTO.net
- いや、本人以外理解できてないって事は、言葉選びを間違ってるって事なんだから、読み手に責任転嫁すんなって。
- 917 :名前は開発中のものです。:2014/12/25(木) 01:26:24.11 ID:0+lNtng/.net
- 正直スマンかった
- 918 :名前は開発中のものです。:2014/12/25(木) 02:39:55.48 ID:+bLp0IG7.net
- 結局ちょっと手を加えるだけで簡単にメモリ解放ができるデストラクタ便利
- 919 :名前は開発中のものです。:2014/12/25(木) 06:37:13.40 ID:GYUw7kdq.net
- >>915
その説明でも意味わかんねえんだけど?
スマートポインタ等で使う工夫したデストラクタ?
スマートポインタのデストラクタの事?
それとスレッドがどう関係してくるんだ?
- 920 :名前は開発中のものです。:2014/12/25(木) 07:27:27.19 ID:lfp6OMz3.net
- >>911
GCって掃除して!って言えば掃除してくれるよ?
問題は、掃除してくれと言える人が少ない事とか、
捨てるべきでないものまで捨てちゃう事かと
ヒープ上の参照は無視して掃除するんだよなぁ……
- 921 :名前は開発中のものです。:2014/12/25(木) 08:08:39.90 ID:MJlq1Aj4.net
- >>920
質の悪いGCを使っているか、単に使い方をミスってるだろ
- 922 :名前は開発中のものです。:2014/12/25(木) 08:15:02.30 ID:MJlq1Aj4.net
- >>915
ちょっと違う じゃねーよ
確保する場所がスタック上かヒープ上かの違いだけじゃねーか
- 923 :名前は開発中のものです。:2014/12/25(木) 08:54:43.93 ID:wubB5pdO.net
- >>921
GCって最初は親切だけど、結局面倒臭いものなんだね
メモリ管理をする手間は変わらないじゃん
- 924 :名前は開発中のものです。:2014/12/25(木) 10:29:27.96 ID:Y3U3uktg.net
- GCで最も困るのはメモリ解放時のStop the Worldだが
v8は少ないと思う
- 925 :名前は開発中のものです。:2014/12/25(木) 12:54:07.39 ID:MhE4palG.net
- どっちがいいなんてアプリケーションによるんじゃね?
- 926 :名前は開発中のものです。:2014/12/25(木) 14:31:05.41 ID:+bLp0IG7.net
- 速度重視のゲーム開発でGCなんて重い物動かす余裕はないね
結構色々なゲームで使うA*だけでもそれなりに食うってのに
- 927 :名前は開発中のものです。:2014/12/25(木) 15:29:01.01 ID:ZzsGRtB9.net
- 使うタイミングと量を間違えなければ、特に問題にならない気がするけどなあ
- 928 :名前は開発中のものです。:2014/12/25(木) 16:21:19.48 ID:qeWu8Kkf.net
- メディエイターパターンでshared_ptr使った場合ってメモリリークするの?
- 929 :名前は開発中のものです。:2014/12/25(木) 21:11:54.62 ID:ICmaagKn.net
- >>928
ん、学校の宿題?違うなら以下の逆質問に答えてみてくれないか?
@ shared_ptrの典型的実装は何
A @でメモリリークする場合の典型的原因は何
B mediatorの目的は何
C BはAを誘発する方向に作用するか
mediator使ってAを招いてメモリリークさせる男の人ってどう思う?
- 930 :名前は開発中のものです。:2014/12/25(木) 21:30:48.42 ID:0+lNtng/.net
- >>922
違うわ
普通はやらんがスタック上でも別にスレッドで使えるわ
確保する場所の話をしてるんじゃねぇ
デストラクタを呼んだ時の振舞の違いを言っとるんだ
- 931 :名前は開発中のものです。:2014/12/25(木) 21:47:40.02 ID:MJlq1Aj4.net
- >>930
「デストラクタが呼ばれ方」の話だったはずが、いつの間にか「呼んだ時の振舞」に摩り替わっている。
具体例まで挙げないと、君の話は他人には理解できないぞ。
- 932 :名前は開発中のものです。:2014/12/25(木) 22:18:25.00 ID:rdtwM2Em.net
- そして呼んだ時の振る舞いって話だったとしてもイミフメー
そもそも配置newしないかぎり自分でデストラクタを呼ばないし。どんどん謎な方向へ。
- 933 :名前は開発中のものです。:2014/12/25(木) 22:24:10.39 ID:0+lNtng/.net
- 生のデストラクタを呼ぶってのは俺の中じゃ、単にdelete xのこと
スレッド使ってたら↑みたいなのは管理が面倒なので使えないっしょ。それだけの話
で、参照カウンタを使ってデストラクタ呼ぶか、マーク&スイープみたいな仕組みでデストラクタを呼ぶか
その振る舞いが違うけど、俺は循環参照に気を使って設計しないといけないのは、やだなぁと言っただけ
そもそも深い話でも続けるような内容でも何でもないだが
- 934 :名前は開発中のものです。:2014/12/25(木) 22:27:00.95 ID:0+lNtng/.net
- ちなみに>>908は>>905宛て
- 935 :名前は開発中のものです。:2014/12/26(金) 11:43:36.55 ID:IXxiiBMK.net
- よくわかんないけど「手動でデストラクタを呼ぶ」じゃダメだったん?
- 936 :名前は開発中のものです。:2014/12/26(金) 16:51:22.54 ID:xlNeQ6wG.net
- 自動化の権化プログラムを扱う人にとって自動化はロマン
特に多くの人がつまづく面倒くさい処理を自動でやってくれるって素敵やん?
解放処理を描かずに済む分コードも減るし、初心者やうっかりさんにやさしいし
世の中にはそういうできる限り完全自動にこだわる人もいるのです
細かい個別の事案にまで高速に対処できる高い能力を持ったオートデストラクタなんて、
それこそマイクロソフト並の巨大企業が本腰入れてデータ集めないと完成まで何年かかるか分からないレベル
消すには消せるが処理速度に影響を与えて邪魔で使えなかったりすればゴミだし
- 937 :名前は開発中のものです。:2014/12/26(金) 18:51:58.22 ID:9MuNlFH5.net
- 演算能力が頭打ちになりそうな昨今、プログラマが殴られるのが規定路線。
自分で何とかしろ、ってこと。
RAIIで十分じゃない。
- 938 :名前は開発中のものです。:2014/12/28(日) 12:00:32.40 ID:DVHfXhJL.net
- クラスのポインタ変数をdeleteした後、
そのポインタ変数にNULLを入れて他の処理でNULLチェックをしてぬるぽ回避してるんですが、
逆に言えばdeleteした後NULLを入れてないとぬるぽ回避できないということで、
一般的に職業プログラマではどういうふうにdeleteした変数を識別してるんでしょうか?
- 939 :名前は開発中のものです。:2014/12/28(日) 12:24:23.36 ID:5FK2L+6G.net
- 生ポインタよりもスマートポインタを使うのが一般的じゃねーの
- 940 :名前は開発中のものです。:2014/12/28(日) 13:58:25.18 ID:dAYPhj1N.net
- 生ポインタの場合
#define SAFE_RELEASE(p) { delete p; p = NULL; }
みたいなマクロ使ってるのを見たことある
俺の趣味プログラミングだとshared_ptrやunique_ptr使ってる
boolへの型変換が定義されてるから普通のポインタみたいに
if (p) { /* スマートポインタが有効だった時の処理 */ }
とかできるし
- 941 :名前は開発中のものです。:2014/12/28(日) 14:54:46.81 ID:DVHfXhJL.net
- みんなスマポなんですか
まぁ生ポインタと同じように扱えるならそっちのほうがいい感じですか
代入で参照カウントが増えるのはオペレーターとかいうやつですか
- 942 :名前は開発中のものです。:2014/12/28(日) 18:56:20.33 ID:uPxHRIHV.net
- 俺はあんまりスマポは使わないな
ちょっと作ったらテストしてリークしてたらメッセージでるし、
deleteのタイミングが難しい場合ぐらいしかスマポ使わないよ。
ポインタ変数なんか、ほとんどの場合どっかのクラスのメンバーに
なってるからデストラクタでdeleteするようにしてるし
- 943 :名前は開発中のものです。:2014/12/28(日) 20:49:21.58 ID:KLVWt4ts.net
- マウスカーソルを対象の位置に置いてマウスホイールで対象にズームするような機能をつけたいのですが
どのように実装すれば良いでしょうか
Siv3Dを使っています
- 944 :名前は開発中のものです。:2014/12/28(日) 20:55:05.01 ID:ToxqMv2l.net
- 素朴な疑問なんだけど、ワープロやグラフィックソフトのオブジェクトと違って
ゲーム中に出現するキャラクタの数は大体決め打ちできるんじゃないの。
Cの作法に則って毎回newして確保するんじゃなくて、例えば1オブジェクト最大256バイト、
80体まで出現するならchar slot[256*80]のような形で生メモリ領域をあらかじめ確保しておいて、
ふだんはp = (Actor*)&slot[256*n]; if (p->Exists) { p->Act(); }でいい気がするんだけど。
もちろんActorは基底クラスで、必要でない時はp->Exists = falseにする。
作成時はnewでなくスタック上でコンストラクタ呼び出して、領域に内容丸ごとコピー。
もしかしたら全然違う用途の話かも知れないけど。
- 945 :名前は開発中のものです。:2014/12/28(日) 20:57:03.11 ID:R8bFfUbq.net
- FlyWeightパターンとかもある
- 946 :名前は開発中のものです。:2014/12/28(日) 21:15:10.93 ID:vMYsGefx.net
- >>944
動的メモリ確保はパフォーマンスへの影響が大きいので、
可能な限りは最大出現数分の配列を確保しておく。
- 947 :名前は開発中のものです。:2014/12/28(日) 22:21:01.45 ID:D5X5qYnm.net
- むしろそんなに重要な物なら絶対に常時必要分確保しないといかんと思うけど
他のジャンルならともかく、敵が出るたびになんだかカクつくSTGなんか嫌だぞ
- 948 :名前は開発中のものです。:2014/12/29(月) 00:30:37.06 ID:gxX17JP7.net
- 逆に、例えば「格闘ゲームにおけるキャラクタ選択画面」なんかは
その画面にいる間オブジェクトは一定だろうから >>942 方式で十分だと思う。
そう考えるとゲームの場合、シミュレーションとか特殊なルールでオブジェクト数に
上限を設けたくないとかでなければポインタ制御は簡素に纏める方向でいいと思うんだわ。
- 949 :名前は開発中のものです。:2014/12/29(月) 00:45:24.09 ID:Ue1eh9PX.net
- まぁ、無理にスマポ使う必要はないと思うけど、
スマポを知って感動して以降、newするものやopen/close系のものは余程でない限りはRAIIで書くようにしてたら、
deleteを書くことが(ほぼ)なくなった。
当然、メモリリークもゼロ。
RAIIを知った前後でプログラムの規模・品質が雲泥の差になったわ。
- 950 :名前は開発中のものです。:2014/12/29(月) 01:07:57.04 ID:0UxFRGu4.net
- 今は、boostにスマポも入っているだろ
- 951 :名前は開発中のものです。:2014/12/29(月) 01:44:11.15 ID:32D0f9iV.net
- memoryとの違いがわからん
- 952 :名前は開発中のものです。:2014/12/29(月) 07:13:22.67 ID:aw7mXH6p.net
- 今最新のVSに入ってるC++も当然11だよな?スマポ余裕で使えるじゃん boost不要
- 953 :名前は開発中のものです。:2014/12/29(月) 11:06:00.25 ID:UPrXKgd4.net
- リークするのはてめえの脳みそだけにしておけ
- 954 :名前は開発中のものです。:2014/12/29(月) 18:43:53.95 ID:aw7mXH6p.net
- うん?現行最新のVSなら3種類の型が使えるだろ?実質2種類だけど
VS以外を使っていたりとかVS標準スマポの仕組みや性能が気に入らないってのは知らない
っつーかな、書き落としはリークじゃなくね
- 955 :名前は開発中のものです。:2014/12/30(火) 03:36:36.79 ID:vvze8R+p.net
- データの圧縮や解凍ってどうやってる?
簡単な圧縮かけた方がファイルからデータに展開するのも早いし、
(ファイルの読み書きの速度と展開速度を天秤にかけた)
解析する人にとっても多少は面倒になるかな?と思って
GPLとかに感染しないのがあると良いな
やっぱ、自力でやるしか無い?
- 956 :名前は開発中のものです。:2014/12/30(火) 03:46:28.22 ID:W5CPlMBg.net
- >>955
zlib
- 957 :名前は開発中のものです。:2014/12/30(火) 04:01:26.42 ID:bdHUCtIv.net
- バイナリ全部繋げてcueファイルにインデックスいれときゃいんじゃね
- 958 :名前は開発中のものです。:2014/12/30(火) 08:13:45.13 ID:swhFWkgZ.net
- 今使うならLZ4かな
- 959 :名前は開発中のものです。:2014/12/30(火) 09:05:37.93 ID:6MynlDel.net
- 色々な言語のライブラリあるしBSDだし良さそうやね
圧縮率あって高速ってのは魅力的だわ
- 960 :名前は開発中のものです。:2014/12/30(火) 09:25:49.71 ID:HpQ+h6E5.net
- 圧縮済みの画像や音声なら無圧縮形式のほうが良いかもね。
mmapして切り出せばメモリ確保も要らない。
- 961 :名前は開発中のものです。:2014/12/30(火) 18:48:29.71 ID:UWJ4OXBN.net
- mmapのほうがreadより速いという迷信について - kazuhoのメモ置き場
http://d.hatena.ne.jp/kazuhooku/touch/20131010/1381403041
- 962 :名前は開発中のものです。:2014/12/30(火) 23:03:50.59 ID:HpQ+h6E5.net
- 誰もCPUキャッシュやディスク先読みのレベルでのmmapの速度の話なんかしてねーよ
- 963 :名前は開発中のものです。:2014/12/31(水) 10:36:13.73 ID:rJyBxJIf.net
- メモリ節約って何だよ
ファイルの内容なんてデコードしたらすぐ捨てるだろ
そんな回りくどいことしないで普通に読み込めばいい
サーバーにおいて複数のプロセスから同じファイルの内容を読み込む時なんかは
読み込み用のバッファが要らなくなるからメモリ節約に繋がるらしいが
殆どのケースで速度が遅くなるだけだから使う理由が無い
- 964 :名前は開発中のものです。:2015/01/01(木) 16:48:21.14 ID:jkRIISMU.net
- class TestClass {
private:
// 型 m_funcArray;
void FuncA();
void FuncB();
void FuncC();
public:
void CreateFuncArray() {
m_funcArray[0] = &FuncA;
m_funcArray[1] = &FuncB;
m_funcArray[2] = &FuncC;
}
void ExecuteFuncArray() {
for (int i = 0; i < m_funcArray.Length; i++) {
m_funcArray[i]();
}
}
}
こんな感じでクラスにメンバ関数ポインタの配列を作って実行したいのですが
メンバ関数ポインタの配列の型をどう宣言すれば良いでしょうか
- 965 :名前は開発中のものです。:2015/01/01(木) 18:08:05.65 ID:cWuPuXeC.net
- 言語仕様的にどこまで正しいかわからんけど
class CTestClass {
private:
void (CTestClass::*m_pFunc[3]) ();
void FuncA();
void FuncB();
void FuncC();
void SetTable() {
m_pFunc[0] = &CTestClass::FuncA;
m_pFunc[1] = &CTestClass::FuncB;
m_pFunc[2] = &CTestClass::FuncC;
};
};
- 966 :名前は開発中のものです。:2015/01/01(木) 18:10:47.53 ID:cWuPuXeC.net
- 呼び出しはこうな
void Exec( int i ) {
(this->*(m_pFunc[i])) ();
}
- 967 :名前は開発中のものです。:2015/01/01(木) 18:29:15.58 ID:jkRIISMU.net
- >>965-966
ありがとうございます
なるほど*はその位置につけるんですか
- 968 :名前は開発中のものです。:2015/01/02(金) 17:10:32.59 ID:dGIIjPDH.net
- enum class Signals {
RED,
GREEN,
BLUE
}
void func(Signals signal) {
if (signal == Signals::RED) {
// 処理
}
}
enum classを使って引数を識別したかったのですが次のようなエラーが出ました
error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
どうすればいいのでしょうか
- 969 :名前は開発中のものです。:2015/01/02(金) 17:16:07.35 ID:nBM88kHl.net
- void main を int main に変更
- 970 :名前は開発中のものです。:2015/01/02(金) 17:47:26.94 ID:dGIIjPDH.net
- 関係ない所のエラーでしたすみません
- 971 :名前は開発中のものです。:2015/01/04(日) 15:42:29.73 ID:8cIsCjgM.net
- ifstream::read(buff,filesize)で読み込んだ文字列を表示すると
末尾にEOFらしき文字化けした文字があってXML等のパースに失敗するんですが
filesizeを-1してreadしたり、読み込んだchar*の末尾のEOFと思われる要素に\0をいれて回避しているんですが
根本的な解決方法がわかりません
どうしたらいいですか
- 972 :名前は開発中のものです。:2015/01/04(日) 16:06:48.29 ID:Ep14vw0N.net
- >>971
filesize 数ぶんの文字が無かったんだろう。
入力バッファ末尾の未初期化の領域が見えているだけ。
改行コードの変換 \r\n --> \n とかでちょうど1文字減ってるんじゃないの?
バイナリモードで読めば、たぶんファイルサイズと文字数が一致するはず。
その後の処理が \r\n に対応してないといけないけど。
テキストモードで読みたいなら、istream_iterator を使うのが定番かな。
- 973 :名前は開発中のものです。:2015/01/05(月) 13:29:36.70 ID:61MXvLfY.net
- 終端文字の文字数って2文字じゃなかったっけ?
- 974 :名前は開発中のものです。:2015/01/05(月) 13:52:13.89 ID:+omNtWXl.net
- buff全体を0クリアしてreadすればいいだけ
他の方法はgetで一文字づつ読みつつeofチェック
ファイルが全てメモリに置いても問題ないサイズならstd::stringとoperator>>で全部一度に取得
好きなの選べ
- 975 :名前は開発中のものです。:2015/01/06(火) 11:25:41.33 ID:BevxLkoj.net
- http://murakan.cocolog-nifty.com/blog/2009/12/cstreameof-7401.html
なんかeofまで読み込むのはifstreamの仕様らしいですね
- 976 :名前は開発中のものです。:2015/01/06(火) 18:08:33.09 ID:+D28bBOU.net
- そりゃeofまで読まないとどこが終端なのか分からないし…
- 977 :名前は開発中のものです。:2015/01/07(水) 13:02:30.14 ID:NiXFoaGk.net
- 横からすいません、質問です。
http://www1.axfc.net/u/3387806
ソフトウェア3DCGライブラリを作っているのですが、
80万ポリゴン/秒(C2D E8400 OC 3.6GHz上&フラットシェーディング&テクスチャマッピングなし)
しか出ません。ソフトウェアレンダリングってこんなものなんですか?
- 978 :名前は開発中のものです。:2015/01/07(水) 18:26:06.67 ID:PQ5kLSMd.net
- 何で今時ソフトウェアレンダラー
- 979 :名前は開発中のものです。:2015/01/07(水) 18:57:47.13 ID:vA0pKoe4.net
- >>977
DirectXのリファレンスドライバでメッシュを表示する適当なもの作ってそれと比較してみたら?
- 980 :名前は開発中のものです。:2015/01/07(水) 20:29:35.89 ID:PQ5kLSMd.net
- ソフトウェアレンダラーにしたってMesaとかIrrlichtのソフトウェアレンダラーとかが既にあるのに
車輪の再開発じゃない?
http://en.wikipedia.org/wiki/Mesa_(computer_graphics)#Software_renderer
http://irrlicht.sourceforge.net/features/
- 981 :名前は開発中のものです。:2015/01/07(水) 22:42:06.11 ID:Wqt7oMn8.net
- GT3D_drawpoly_fill_sub()を流し読みしたけど、多角形描画は普通っぽかったし
このプログラム自体は特に速度をどうこうしているものではないようですね。
ちょっと見ただけだけどソースは一部ですよね
SSEとかも使ってないし、マルチスレッドでもないですよね
描画対象はメモリ? に一旦描画している感じなのかな
描画範囲を分割してマルチスレッドにしてはどうですか?
- 982 :名前は開発中のものです。:2015/01/08(木) 20:42:14.85 ID:Mw182kRW.net
- メモリ速いやつに差し替えようぜ
- 983 :名前は開発中のものです。:2015/01/08(木) 22:06:01.19 ID:7iBzssXL.net
- MSの最新技術の粋を集めたWARPに敵うはずがない
- 984 :名前は開発中のものです。:2015/01/08(木) 22:18:13.29 ID:5+CLNQq0.net
- WARPはSIMDも使ってるはずだよね。
- 985 :名前は開発中のものです。:2015/01/09(金) 13:53:51.10 ID:VWlQDlh6.net
- SSE2必須で使える場合SSE4.1まで使ってるとかなんとか
- 986 :名前は開発中のものです。:2015/01/09(金) 17:34:34.87 ID:Iw10L3cl.net
- >>977 です。
ちょっとSSE勉強してみます。
今更ソフトウェアレンダラなのは
自分で作れば最小限の機能になって使いやすいと思ったからです。
自作OSへの転用も簡単ですし。
SSE版は別プロジェクトでやってみます。
- 987 :名前は開発中のものです。:2015/01/09(金) 17:49:58.46 ID:6dSDlYuJ.net
- SSEより完成目指せ。
効率よく使ったとして数%の成績アップだ。体感では違いがないとかなりうる。
- 988 :名前は開発中のものです。:2015/01/09(金) 18:21:14.91 ID:YwByCpOo.net
- >>986
何その理由
普通にOpenGLかDirect3Dで良いじゃん
自作OSってふざけてんの?
- 989 :名前は開発中のものです。:2015/01/10(土) 06:38:12.95 ID:FMkme2Bg.net
- >>986
面白い物好きが来たな
OS作るのがメインでゲーム作りがサブなのか
目指すは究極のマルチプラットフォーム?
あるいは新しい3D環境でも作り出したいのかな?
レイトレーシングという概念を勉強すると、また新しい世界が見えるかも?
- 990 :名前は開発中のものです。:2015/01/10(土) 10:07:13.00 ID:JC3btUBL.net
- 自前でできるといいと思うよ。
その後、FPGAに実装したらさらに楽しいと思う。
- 991 :名前は開発中のものです。:2015/01/10(土) 10:28:58.93 ID:XEF52+tX.net
- 中身自作するにしてもAPIはOpenGLにあわせたものも作った方が良いと思うけどね。
自作物のパフォーマンスがどれだけ酷いか解るし。
まぁ趣味なんだろうから好きにしたら良いと思うけど。
- 992 :名前は開発中のものです。:2015/01/11(日) 00:41:53.86 ID:EFs4nj8K.net
- き、きっと将来のビル・ゲイツを目指しているんだよ!
オペレーション・システムそのものの開発ときたか
夢がデカすぎて全体像が見えない
- 993 :名前は開発中のものです。:2015/01/11(日) 00:44:24.46 ID:IZj/cFBq.net
- 実用性はさておき、自分で一通り作れたら最高に感動できるだろうな。
がんばってくれ。
- 994 :名前は開発中のものです。:2015/01/11(日) 00:50:41.76 ID:2AMxCLe9.net
- お前ら東大の名物科目CPU実験くらいは知っといたほうがいいぞ
986がそうとは思わないがな
- 995 :名前は開発中のものです。:2015/01/11(日) 06:09:25.57 ID:vPB1OoJW.net
- WARPって必要な部分だけソフトウェアで補うとかじゃなくって
全部ソフトウェアになるのか
- 996 :名前は開発中のものです。:2015/01/11(日) 09:26:23.44 ID:DORzARTJ.net
- >>992-993
実はOSの方は既にある程度出来てまして・・・w
「三十日でできる!OS自作入門」のはりぼてOSをもとに作ってます。
ちなみにソフトウェアレンダラに至った経緯は
OS作った
↓
それでゲーム作りたい
↓
でも3dCG使えない
↓
じゃあレンダラ作ろう
↓
ある程度出来た←いまここ
自作OSの方はSSE未対応なのでlinux/OSX/Windows版のみの特権になるっぽいですね
今日中には移植しようと思ってます!
- 997 :名前は開発中のものです。:2015/01/11(日) 10:21:27.64 ID:RDQlUyF+.net
- 次スレ立てたよ
C/C++ゲーム製作総合スレッド Part7 [転載禁止]2ch.net
http://peace.2ch.net/test/read.cgi/gamedev/1420939171/
- 998 :名前は開発中のものです。:2015/01/11(日) 10:39:34.22 ID:IZj/cFBq.net
- >>997
乙〜!
やっぱゲームプログラミングは一番楽しいぜ。
- 999 :名前は開発中のものです。:2015/01/11(日) 18:55:24.63 ID:9XLW+JE+.net
- 自作OSとか本人は楽しいんだろうけど
- 1000 :名前は開発中のものです。:2015/01/11(日) 19:08:48.17 ID:+gxvr94o.net
- 本人が楽しいなら十分だろ
- 1001 :2ch.net投稿限界:Over 1000 Thread
- 2ch.netからのレス数が1000に到達しました。
総レス数 1001
246 KB
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver.24052200