トップページgamedev
811コメント267KB

ToHeart2 ほか AquaPlus/LeafのGPLゲーをいじるスレ

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2005/12/13(火) 01:33:48ID:TT+LcNFZ
弊社製品のムービー再生にxvid.orgのムービー展開ライブラリを使用していた件について。

弊社製品、
『アルルゥとあそぼ!!(ランチャとRoutesミニシナリオのみ)』
『Tears To Tiara』
『鎖−クサリ−』
『ToHeart2 XRATED』
の4商品では、動画再生に http://www.xvid.org/ において公開されいるXViD再生エンジンを使用しております。

この動画再生エンジンのプログラムはGPL(GNU General Public License)に基づくソフトウェアとして公開されていますが、これを使用した場合、GPLに定められている通り、オファーがあればソースコードを公開する義務があります。

このGPLのソース公開義務に従い、弊社の上記4作品のソースコードを全て公開する事に致しました。現在ソースコード公開に向けて社内のソースコードのまとめを行っておりますが、2年ほど前のタイトルも含まれておりますので、多少時間がかかります事をご容赦下さい。

今後、XViDの開発元に弊社より謝罪を含め連絡をとり、GPLの基準に合致しているかを確認を行った上で、全ソースコードの公開を致しますので公開まで少々お待ち頂けるようお願い致します。

http://leaf.aquaplus.co.jp/xvid.html

0484名前は開発中のものです。2006/01/22(日) 19:11:57ID:kJ2aHrN/
>>482
俺がその書き込みをしたわけでは無いから、同じことを言ってるのかどうかわからんが
露骨にカード指定してある部分があるので、レスしてみる。
TtT起動時に
「RADEON 8500〜9200を使っている(画面が崩れる場合のみ)」というチェックボックスがある。
そのチェック項目で

if(Avg._Radeon8500){
x = (int)(MapControl.px-ShakeDx);
y = (int)(MapControl.py-ShakeDy);
}else{
x = MapControl.px-ShakeDx;
y = MapControl.py-ShakeDy;
}

こんな構文がある。MAPのx,y座標を浮動小数点から整数に変えてあるな。
具体的にはわからんが
整数にしないと「画面が崩れる」=「テクスチャ化け」ってことかな?
0485名前は開発中のものです。2006/01/22(日) 19:16:04ID:z/L4qfd6
>484
8500持ってないしコードも読んでないが、x,yはfloatなんか?

だとすれば、テクセルとピクセルの対応が0.5ずれてるのを修正している
んじゃないのか、と妄言してみる。
0486名前は開発中のものです。2006/01/22(日) 19:45:14ID:538v+OJm
乗り遅れた〜
>190 が消えているので再アプお願いします。
0487名前は開発中のものです。2006/01/22(日) 20:05:48ID:h/A0mOdE

なにこいつ?
0488名前は開発中のものです。2006/01/22(日) 20:21:15ID:M8R6LppB
こーいうものこそWinnyでおとせばいいんでねーの?
04894662006/01/22(日) 20:26:44ID:13ePulHq
ソース無いので助かるっす

>>484-485
レスありがとうございます。ってことは8500〜9200時のみ、
テクスチャを0.5ずらす必要がない(事がある)って事なんですかねぇ。

ちなみにうちの8500だと、0.5ずらして初めて、テクスチャが綺麗に表示されます(TL済みの場合)。
0490名前は開発中のものです。2006/01/22(日) 20:59:45ID:z/L4qfd6
>489
それは大抵のグラボでそういう動作をする。
texelの中心とpixelの中心は0.5ズレてるのが普通。

つーことは、違うっぽいね。何のためなんだろう?
0491名前は開発中のものです。2006/01/22(日) 21:03:57ID:kJ2aHrN/
いや、テクセルの中央ずらしは他のオプションで制御されてる。
良くわからんな。

てか、確か8500−9200って全て同じコアでしょ。
しかも、8500が出た当時、海外のベンチマークやゲームでも、よくテクスチャ化け起こしてた。
9000でリニューアルされて以降、そういうのは聞かなくなったけど、そのへんかも。
0492名前は開発中のものです。2006/01/22(日) 21:43:21ID:+vTmADOH
ソース読んだけど・・・フツーにウンコだなw
つーか、こいつメモリ管理(インスタンスの管理つったほうがわかりいい?)できてねぇよ。
あ、newとかdeleteの管理ができてないってことね。
どのタイミングでなんのデータを生成して、どのタイミングでなんのデータを削除するかってのがまるで見えてない。
これじゃバグ減らないだろうな・・・。
まあ、所詮はエロゲPGってとこで終了。データ削除。
洋ナシ、脳ナシ、魅力ナシ、領域の無駄w
HDDから飛んでケー!w
0493名前は開発中のものです。2006/01/22(日) 21:53:31ID:zheMC4ji
自慢厨ばっかで実際にプログラムできそうなヤツは居ないようだな
葉っぱ板のがまだ有効に使ってる
04944592006/01/22(日) 22:34:29ID:TvkA53ao
>>469
>メモリリークの話なんかすんなよ。レベル低すぎ。
>そんなもんはつぶしてあるのが前提の話だろうが。
どうやって、その潰されているってのを保証するんだ?

>つーかさすがに俺もデストラクタは使うから、スコープを外れれば
>自動解放されるし、メモリリークはほとんど起こさんけどな。
インナーで使っているものはそれでいいかもしれないが、
外部からポインタをセットして貰って、その領域がいつの間にか解放されていたり、
内部のポインタをどこかに渡してそのままデストラクタが呼ばれた場合は?

>スマートポインタの使い方回りで変なバグ作りこむ方がやっかいだ。
それって質の悪いスマートポインタ使ってるんじゃね?
newだろうがmallocだろう自前のアロケータだろうがちゃんと解放出来て、
アップ・ダウンキャストが出来るスマートポインタじゃないとまともに使えないと思う。

>解放タイミングが見えにくいのも怖いし。
どこから参照されているか、ってのを常に考えながらプログラムを書く方が恐い。
人間だから、いつ忘れるかわかったもんじゃないからな。

>>470
>ソースからどうやってそんなこと読み取んだw 超能力者かw
Leafはシステム周りがあまり充実してるとは思わなかったからね。

>構造をウンウンうなって考えてるばかりでコード書かない奴
それは凄腕のプログラマとは言わない……。
04954592006/01/22(日) 22:35:59ID:TvkA53ao

>>475
>そんな想像でしか分からない事考える方が無駄だと思うが。
確かにそうかも...。

>>476
>そのとおり、時間の無駄。働かないマニアを飼っとく余裕はない。
俺もそう思う。

>ベタコードで書いたって読める範囲のものを作るときはベタに書け。
だからってベタに書く必要は無い。
速く設計出来てバグのないプログラムを速く組めて、保守性が良ければいい。
とりあえず全部は無理にしても、それを目指すべきだろう。

>>478
こういった全部publicになってるようなソースはどこから何をされているか分かりづらいから、
安全性が保証されていることを立証するのが難しいんだよ。
だから「まだまだあるだろう」って書いた。

>>481
>普通は速くて安ければソース気にする上司や顧客は少ないけどな
上の人は保守性も気にして欲しいな...。
0496名前は開発中のものです。2006/01/22(日) 22:38:02ID:DFIhmGNN
上記のRADEON8500対応みたいな部分こそ、枯れてるプログラムの美点だな。
あたまでっかちが幾ら「綺麗な設計」しても、環境が無ければ対応できない。

「ハードウェア/ドライバ側が対応すべきだ!」と寝言を言って
RADEONユーザを逃すか、AP側で対応して売るか。
0497名前は開発中のものです。2006/01/22(日) 22:40:42ID:1kCo7YFB
>あ、newとかdeleteの管理ができてないってことね。

newもdeleteも使って無いようだけど…?


つーか、何人かは「C++使ってないからウンコ」と主張してるようだけど
そんなんで批判してるのはアホだよ?

Javaしか知らないJava厨に言わせれば「Java使ってないからウンコ」だろうね。
Lispしか知らないLisp厨に言わせれば「Lisp使ってないからウンコ」だ。

その次元と同じことに早く気づけよ。
04984592006/01/22(日) 22:45:24ID:TvkA53ao
>>496
枯れてるプログラムというか、過去の蓄積では……。
そして本当の「綺麗な設計」は、その辺も丁寧に wrap 出来る設計だと思う。
0499名前は開発中のものです。2006/01/22(日) 22:48:03ID:1kCo7YFB
さっきから「スマートポインタ使わないなんてバカじゃね?」

というような主張をしてるキミへ


スマートポインタ?なんでGC使わないの?バカじゃね?
0500名前は開発中のものです。2006/01/22(日) 22:52:04ID:AsVDwAC5
GC使えばメモリリークがなくなると思ってる奴は素人
0501名前は開発中のものです。2006/01/22(日) 22:52:37ID:XpXxM0hz
設計段階から、どんなワークアラウンドが必要かなんて
わからんよ。
0502名前は開発中のものです。2006/01/22(日) 22:57:35ID:1kCo7YFB
スマートポインタでメモリリークが無くなると思ってる奴よりは玄人
05034592006/01/22(日) 22:58:12ID:TvkA53ao
>>499
俺か?

GC のことを失念してた。
でも、GC は便利だけど、開発の規模が大きくなるから、
そんなの言語レベルで実装してくれないと厳しい気がする。

C++ で GC とか作れるレベルのプログラマにスマートポインタを必ず使えとは言えないけど、
malloc とかで領域を確保するぐらいならスマートポインタを使って欲しいね。
0504名前は開発中のものです。2006/01/22(日) 23:00:42ID:TvkA53ao
>>502
GC を自前で作れるヤシは玄人。
まじすげぇと思う。
0505名前は開発中のものです。2006/01/22(日) 23:01:30ID:vZBnACJ9
つーか、マジ葉鍵板のほうがまともだな。
普通のプロジェクトに参加したことがあるならこれくらい普通だろ?
100人クラスは参加したこと無いので分からんが。

もし自分が飛び込みで参加するとしたら吉里吉里とかよりよっぽど
今回のこのソースのほうが入りやすいと思うんだが。
それとも大手では本当に理想論的なプログラムを組んでるの?
最大でプログラマ10人で、大作プロジェクトにはかかわったこと
無いので最大手などはどうやってるかわかんないですが。

あと、最後まで組み上げた事なさそうな理想論言う人多すぎ。
0506名前は開発中のものです。2006/01/22(日) 23:04:17ID:z/L4qfd6
>504
GCは68k版のPalmOSにも載ってたな、そういえば。
0507名前は開発中のものです。2006/01/22(日) 23:19:54ID:ygE4fJMl
あのう、鍵板の方のどのへんがマトモなんでしょうか。
0508名前は開発中のものです。2006/01/22(日) 23:26:02ID:Z5b54lQg
現場も吉里吉里も知らない普通の趣味プログラマーだが、
ソース見た瞬間に糞っぽい雰囲気が漂ってきたぞ。
0509名前は開発中のものです。2006/01/22(日) 23:34:15ID:0R7Wn0fr
GCでメモリリークがなくなると思ってるんですけど。。
なくならないんです?

あと、少しくらいメモリリークしてもいいジャンとか思ったり。。。
0510名前は開発中のものです。2006/01/22(日) 23:45:43ID:CAN1/NC4
なにより目的が違うじゃん。
吉里吉里ってのはどんなゲームになるのかわからんから
汎用性やメンテ考慮するだろうけど、
これについては、ToHeart2っていう企画のゲームが
納期までに動けばいいんだから。
0511名前は開発中のものです。2006/01/22(日) 23:45:46ID:uYeDG6o0
ガベージコレクション
http://www.kmonos.net/alang/d/garbage.html
0512名前は開発中のものです。2006/01/22(日) 23:47:52ID:hoOpivrO
最近はメモリなんて山ほどあるんだから、エロゲくらい静的配列でいいじゃん
0513名前は開発中のものです。2006/01/22(日) 23:48:28ID:0R7Wn0fr
>>511
やっぱりメモリリークがなくなるように見えるんですが
俺ってバカ?
0514名前は開発中のものです。2006/01/22(日) 23:50:53ID:41l+VNv6
>>510
ゲームプログラムの場合1作品じゃペイしないから
汎用性、メンテしやすさを考慮して、
数作掛けて元を取るのが最近のトレンドでないの?
0515名前は開発中のものです。2006/01/22(日) 23:51:33ID:HmsqJZOc
>>513
いつプールするか指定できないからリークが発生する
0516名前は開発中のものです。2006/01/22(日) 23:52:01ID:TvkA53ao
>>509
循環参照してると、いつまで経っても解放されない。
もしくは自分は解放したつもりでも、スレッドマネージャとかの管理クラスが
いつまでも参照しているってこともある。

>少しくらいメモリリークしてもいいジャン
Windows ならプロセスの終了時に OS が解放してるから、
ちょっとしたリークなら大丈夫かもね。
でも、リークするルーチンが何度も呼ばれるようであれば問題。
スワッピング起こして動作が鈍くなって最終的には落ちる。
0517名前は開発中のものです。2006/01/22(日) 23:52:04ID:CAN1/NC4
>>514
よくしらんけど、Leafのゲームって
バカ売れしてるイメージがあるんだけど違うんでしょうか
0518名前は開発中のものです。2006/01/22(日) 23:58:37ID:k5TOLKVY
ガベコレだと有名なのはBoehm辺りかな。
だれか趣味じゃなくてプロジェクトで使った事ある人居る?
0519名前は開発中のものです。2006/01/22(日) 23:59:31ID:0R7Wn0fr
>>515
そのうちプールされるんじゃないんです?
0520名前は開発中のものです。2006/01/23(月) 00:02:38ID:EpmzMPqz
>速く設計出来てバグのないプログラムを速く組めて、保守性が良ければいい。
>とりあえず全部は無理にしても、それを目指すべきだろう。
とりあえず君が夢見がちなアリスちゃんって事は分かった。
0521名前は開発中のものです。2006/01/23(月) 00:07:30ID:TvkA53ao
>>520
だから「目指すべきだろう」って言ってるじゃん。
俺なんか変なこと言ってる?
0522名前は開発中のものです。2006/01/23(月) 00:09:55ID:E7dvDvpC
>>521
shamin乙
0523名前は開発中のものです。2006/01/23(月) 00:58:12ID:6n5VZaEV
結論:LeafユーザのPCのべ数十万台での稼動実績 >>>>>>>>>> 頭でっかち名無しの空論・べき論
0524名前は開発中のものです。2006/01/23(月) 01:42:48ID:ew54EQW7
俺は、>484のようなのがもっとたくさんあるならいいなあと思っていた
わけだが、なかなかそういうもんでもないようだな。
>494
>どうやって、その潰されているってのを保証するんだ?
さて、どこから突っ込んだものやら。
>495
publicだのprivateだのでバグが増えるほど複雑なソースでもないだろ。
君の理論だと、Cソースであるだけで潜在的バグを疑われることに
なるんだが? C++以前からやってるプログラマを舐めすぎじゃないか?

mallocがリーク云々の元だとか行って毛嫌いしてる奴は、
Win32APIの取得/解放系は一切使わないのかねえ?
0525名前は開発中のものです。2006/01/23(月) 01:52:39ID:TJiDURV2
メモリリークのバグとか聞くのはたいていCのプログラム。
Javaプログラムのメモリリークなんて聞いたこともない。
0526名前は開発中のものです。2006/01/23(月) 01:57:28ID:ABluZIRp
だったらエロゲだけじゃなくてFPSやネットゲーもJavaで開発すればいいのにね
0527名前は開発中のものです。2006/01/23(月) 01:58:09ID:ew54EQW7
>525
リークしにくいのがJavaの売りのひとつなんだから当然。ないわけではないが。

C++でもリークするようなコードはいくらでもかけるぞ。
Cのリークは、どこかで解放すりゃあそれで終わるようなことだが、
下手に作りこんだスマートポインタやGC周りでリークが起きたら
デバッグしんどいぞ。
0528名前は開発中のものです。2006/01/23(月) 02:04:52ID:FI4Y5xu4
>Cソースであるだけで潜在的バグを疑われる
そういうことになるな。
だからこそ C++ や C# という言語が出てきたと思っているんだけれども...。

>C++以前からやってるプログラマを舐めすぎ
俺もCからやってるよ。
でも、Cは必要のない管理(機械的に出来る処理)を迫られることがよくある。
俺は、機械的に出来る処理は、出来る限り機械に任せるべきだと思っているんだが、
そう思ってる人は少ないのかな?

>Win32APIの取得/解放系は一切使わないのかねえ?
スマートポインタをセットするときに、解放するための functor を一緒に登録しておく。
そうすれば、どんなアロケータだろうときちんと解放できる。
0529名前は開発中のものです。2006/01/23(月) 02:08:54ID:2ogVSCi/
別にCだってカプセル化はできるしスマートポインタだってできるでしょ。
C++ほど実装が自動化できないというだけで。
0530名前は開発中のものです。2006/01/23(月) 02:11:59ID:rk2b9dla
>>529
Cでデストラクタの自動実行を実現する方法があるなら教えてくれないか?
0531名前は開発中のものです。2006/01/23(月) 02:24:21ID:FI4Y5xu4
>>529
>スマートポインタ
確かに出来る。
ただ、例えばポインタ同士をイコールで結ぶたびに、参照カウンタを増やすための
関数を呼び出さなければならないっていう(無駄な)ルールが出来てしまう。
もしその関数を呼び出すのを忘れたらカウントが狂ってしまう。
smart_equal みたいな関数を作ったとしても、可読性がすごく悪くなる。
さすがに俺もそこまでして C でスマートポインタを使おうとは思わない...。

C++ であれば、operator=() を使えば解決できる。
可読性も落ちない。参照カウンタを間違えるミスもしない。

>C++ほど実装が自動化できない
俺はそこが一番の問題だと思ってる。
忘れるってのは人間だからあること。
ちょっと忘れただけで重大なバグが出たりすると、目も当てられない。
しかもそのデバッグするコストを考えると、出来る限り自動化したいと思ってる。
0532名前は開発中のものです。2006/01/23(月) 02:32:00ID:JHW/xF6w
C++は学習コストが高い。
俺はかなり上達したが、思い返せば確かに複雑なルールが多すぎる。

それを思えば、使える人が多いCで開発することもしょうがないと考える。


クラスを作る時のビックスリーの約束事、ちゃんと知ってる人が何人いるか。
0533名前は開発中のものです。2006/01/23(月) 02:35:40ID:JHW/xF6w
>しかもそのデバッグするコストを考えると、出来る限り自動化したいと思ってる。

はぁ。ならC++を使うのもやめたらどうだろうか。
もっと自動化できるよ。
0534名前は開発中のものです。2006/01/23(月) 02:48:17ID:FI4Y5xu4
>>533
うん、今は C# を勉強してる。

ところで、これは純粋な疑問なんだけど、
>もっと自動化できる
自動化しても構わない部分を自動化するのに何か問題があるの?
0535名前は開発中のものです。2006/01/23(月) 02:54:37ID:JHW/xF6w
勝手にすればいいんじゃないの?お前がどうしようと自由だ。
0536名前は開発中のものです。2006/01/23(月) 02:57:47ID:FI4Y5xu4
>>535
了解。おやすみ。
0537名前は開発中のものです。2006/01/23(月) 03:36:21ID:m/04m7oX
単純に、2人で開発しるとします。
1人はC++を完全に使いこなせる。C的に書くことも出来る。
1人は、C専用。
この環境で、C++で組むことが望ましいか?
・・・んなわけない。

それだけの話だと思うんだが。
このコード、明らかに2人以上の手が入ってるし。
0538名前は開発中のものです。2006/01/23(月) 03:54:11ID:hQP9AfeF
そしてそのうちの1人はC++を完全に使いこなせないのに
無理してC++使うアフォだな
0539名前は開発中のものです。2006/01/23(月) 04:08:19ID:6JCAhh7Q
お前らつまらない事で争ってないで仲良くデスマーチしてなさい
0540名前は開発中のものです。2006/01/23(月) 04:55:19ID:zWoY+E2s
>537
betterCとしてC++で組みながら、徐々に学習/教育していく。

年がら年中マスターアップ前じゃ無いんだから、
余裕のある時に、言語の学習やらライブラリの整理やらをしてるのか?って話だと思う。
0541名前は開発中のものです。2006/01/23(月) 07:06:40ID:LU0Ls/vr
お前ら、エロゲプログラマはプログラマでもさらに底辺の存在なんだよ
これ基本

これで糞コードも、低レベルプログラマ擁護厨も説明がつくだろ?
まともに付き合ってると感染るぞ
0542名前は開発中のものです。2006/01/23(月) 07:40:25ID:GnjRD22b
>>537
C++使えない人間を採用しなきゃいいじゃん
同人じゃあるまいし…
0543名前は開発中のものです。2006/01/23(月) 08:41:02ID:JHW/xF6w
>>542
お前直前のレスが読めないのか?
エロゲなんて同人と大して変わんないんだよ。

>C++使えない人間を採用しなきゃいいじゃん

普通のゲーム求人でもC++必須と要求しとる会社なんぞ少ないわアホ!
社会でろ!
0544名前は開発中のものです。2006/01/23(月) 08:43:05ID:MBYpjn7a
両方使える奴を採用すればいい。
0545名前は開発中のものです。2006/01/23(月) 09:01:25ID:87gDgMCs
面接で忘れてはいけない最も重要な点はここにある
 ―優良な候補者を誤ってはじいてしまう事は不良な候補者を誤採用するよりはずっとマシ― 
不良候補者の不手際を修正するために、ゆくゆく多大なる優秀な人々の時間、
ひいては会社のコストを犠牲にしなければならなくなる。
少しでも不安要素があれば 不採用 だ。
0546名前は開発中のものです。2006/01/23(月) 12:20:59ID:ew54EQW7
>528
>>Cソースであるだけで潜在的バグを疑われる
>そういうことになるな。
あきれ果てた。少しはまともな奴かと思ってたのに。
>でも、Cは必要のない管理(機械的に出来る処理)を迫られることがよくある。
そういうところだけC++を使えばいい。デストラクタとかね。つまりbetter C。
なんでも自動化しようとしすぎてドツボにはまるのがC++マニアの限界。
>スマートポインタをセットするときに、解放するための functor を一緒に登録しておく。
>そうすれば、どんなアロケータだろうときちんと解放できる。
いつ解放されるのかタイミングを制御しにくいけどな。
解放順でエラーが出るとめどい。だから、MFCとかは明示的に解放できるように
Create Destroyメソッドが付いてんだよ。実質malloc freeと変わらん。
>532
>それを思えば、使える人が多いCで開発することもしょうがないと考える。
そゆこったな。俺だってその気になればC++使えるけど、デバッグ時に
いちいち参考書読んで調べながら、なんてやってられんだろう。
硬くて単純なCライクなソースを好むのはそういうことだ。
0547名前は開発中のものです。2006/01/23(月) 12:26:24ID:ew54EQW7
「潜在的バグ」の作りやすさという点ではCが劣るかもしれないが、
悪質さという意味ではC++のほうが劣る。継承元やテンプレートの
細かい実装部分に由来する不具合を追うのは大変だ。ソース上に現れない
関数呼び出しが多いからな。
C++は元々ある程度大きなプログラムを集団作業で作るために開発された
言語だ。大して大きくもないシステムを一人で保守するために、あんまり
大げさな設計をする必要はない。ベタでいい。
0548名前は開発中のものです。2006/01/23(月) 12:30:42ID:ew54EQW7
つーか、今読み直してみたけど、XvidもCソースだぞw
これも潜在的なバグが疑われるのか?
0549名前は開発中のものです。2006/01/23(月) 13:27:57ID:bDe/L9gI
C++叩くやつって大きく分けて2種類いるよな。
C++理解できないやつと、C++使いすぎて問題点が目に付くようになったやつと。

前の会社で前者の上司がいて大変だったぜ。
0550名前は開発中のものです。2006/01/23(月) 13:59:39ID:ew54EQW7
趣味でならSTLもBoostも触ってみたことがあるし、Modern C++なんか
パズル的に大いに楽しませてもらったけどな。
仕事で使うってことは、また別だからな。
0551名前は開発中のものです。2006/01/23(月) 14:03:29ID:9BTKjMXx
なんか2ちゃん初心者みたいなのがいるね。
0552名前は開発中のものです。2006/01/23(月) 14:06:35ID:ew54EQW7
2ちゃん熟達者って、なんかの自慢になるのか?
0553名前は開発中のものです。NGNG
すみませんが誰かソースを再うpしていただけませんか。
0554名前は開発中のものです。2006/01/23(月) 16:38:49ID:Wyfr2M+3
使う人間の能力が追いつかなくてバグの温床になるような言語は要らない。
0555名前は開発中のものです。2006/01/23(月) 16:39:21ID:x4XcF0Nc
この板のWikiの専用ページに置いてあるだろうに
0556名前は開発中のものです。2006/01/23(月) 17:01:14ID:6YNn4rFZ
ここすか?
http://gamdev.org/w/?%5B%5BToHeart2%A4%DB%A4%ABAquaPlus%2FLeaf%A4%CEGPL%A5%B2%A1%BC%A4%F2%A4%A4%A4%B8%A4%EB%A5%B9%A5%EC%5D%5D#content_1_1

なんか不具合があるような報告があるんだけど、
ビルド&実行できるんかいな?
0557名前は開発中のものです。2006/01/23(月) 18:18:50ID:ew54EQW7
saerchはなあ。ちょっと恥ずかしいなあ。
世の中結構つづり間違ってるソースあるけどさ。日本人はその辺弱い。
0558名前は開発中のものです。2006/01/23(月) 18:37:56ID:JZo/obfj
で、リファクタリング済みのソースUPはまだですか?
 >設計が汚いとか実装がヘボイ云々言ってる賢い人々

#「1から作り直した方が早くて楽」であるなら、
#同じ機能を作り直したソースでも構いませんが…
0559名前は開発中のものです。2006/01/23(月) 18:53:40ID:2ogVSCi/
じゃあ俺がreserveをresizeに直したのをUPするよ。
0560名前は開発中のものです。2006/01/23(月) 19:50:15ID:LU0Ls/vr
>>558
通りすがりが川を見て「汚い川だな」と言ったからって
その通りすがりがドブ掃除までするはずが無いだろう。
0561名前は開発中のものです。2006/01/23(月) 20:31:04ID:rWlxudZV
>>559
あの箇所はそれだけじゃ解決しないじゃん・・・。え、いや、もちろん
気がついてらっしゃると思いますけど
0562名前は開発中のものです。2006/01/23(月) 20:37:33ID:ew54EQW7
>560
所詮口だけってことだな。
0563名前は開発中のものです。2006/01/23(月) 20:41:17ID:46B/3xxf
>>560
最高に笑ったw
0564名前は開発中のものです。2006/01/23(月) 20:43:38ID:aa1eToNE
>>560
座布団3枚
0565名前は開発中のものです。2006/01/23(月) 20:45:45ID:ew54EQW7
自分から「キボンヌキボンヌ」と騒いでドブ川へ我先にと飛び込んでおいて、
「汚い川だな、服が汚れちまった、俺んちの池のほうが綺麗だぜ」とか
騒いでるようなもんだな。しかも、本当にそいつんちの池が綺麗なのかは
誰も知る由もないw
0566名前は開発中のものです。2006/01/23(月) 20:47:19ID:Wyfr2M+3
じゃあ、あれのソースはキレイなのかってぇとそうでもない気がするんだが。
0567名前は開発中のものです。2006/01/23(月) 21:19:31ID:ew54EQW7
やるか? 吉里吉里のコードレビュー
0568名前は開発中のものです。2006/01/23(月) 21:39:57ID:rWlxudZV
汚いソースのゲームだとウン万本売れるってことだ。
綺麗なソースだと売れないってことだ。
0569名前は開発中のものです。2006/01/23(月) 21:44:52ID:gtuVUXnw
それが結論かも。
要は動くモノを送り出せばいいだけで、きれいにすることに時間かけることなんか
たいした意味がないということかも。
0570名前は開発中のものです。2006/01/23(月) 21:56:54ID:ew54EQW7
そゆことだな。コードの美しさなんか誰も評価してくれないし。
0571名前は開発中のものです。2006/01/23(月) 22:02:38ID:BvvCMcBl
俺は汚いソース書いた部下を許さない
0572名前は開発中のものです。2006/01/23(月) 23:32:15ID:FI4Y5xu4
>>546
>なんでも自動化しようとしすぎてドツボにはまるのがC++マニアの限界
設計のやり方だろうな。下手な奴がやるとむしろよけいに汚くなる。
>解放順でエラーが出るとめんどい
出るのか?
どこからか参照されてる限り解放されないんだから、NULL にアクセスってこともないだろ?
あと俺は MFC 嫌い...。
>>547
>細かい実装部分に由来する不具合を追うのは大変
確かに。それは同意できる。
>大げさな設計をする必要はない。ベタでいい。
大げさな設計をする必要はないと思うけど、だからってベタにする必要はないんじゃね?
デザインパターンは結構小回りが効く設計だと思うんだけど。
>XvidもCソース
いまだに C でプログラムを書かないといけないって現状を考えると、
こういったものは C で書くしかないんじゃね?
0573名前は開発中のものです。2006/01/23(月) 23:36:07ID:gDiWXnTi
>>557
文字が前後逆になるtypoは日本に限らずありがちだと思うけど。
http://www.google.com/search?num=50&hl=en&q=saerch&btnG=Search

でも以前 ge-mu ってフォルダを見た時は切なくなった。
0574名前は開発中のものです。2006/01/24(火) 00:13:09ID:C2qh0Z8r
>>572
いいや、ベタにする必要はある。
際限なく汎用化、抽象化し、簡単なはずの物事を難しくしようとする設計厨にはわからんのかもしれんがな。
0575名前は開発中のものです。2006/01/24(火) 00:20:15ID:1HPVs1Ni
>>559
UPまだぁ〜?
0576名前は開発中のものです。2006/01/24(火) 00:45:32ID:wKPmTrbq
>>574
>際限なく汎用化、抽象化
そこまでは言わないよ。
俺も1回しか使わないようなソースであればベタで書いた方がいいと思ってる。
さすがに何度も使うような部分であればちょっと考えるけど。
0577名前は開発中のものです。2006/01/24(火) 01:25:54ID:yzjHkLEW
YAGNI >>>>>>>>>>>>> OO
0578名前は開発中のものです。2006/01/24(火) 01:27:12ID:K8lMIVbT
>572
そら上手い奴が上手くやればなんでも上手く行くけどな。
解放「順」が問題な。あと、リソースをこまめに節約しようと思うと、
どうしても手動で取得/解放する形になるなあ。目に見えるところで
制御したい。まあ、君がMFC嫌いだというのは分かる気がする。
デザパタは確かに有意義かもしれんが、あんまし今回関係なくない?
対応コンパイラがVC++とgccなんだから、C++でいい気がするが。
0579名前は開発中のものです。2006/01/24(火) 01:48:11ID:wKPmTrbq
>>578
>上手い奴が上手くやればなんでも上手く行く
だね。ほんとそういう人たちを尊敬する。
>手動で取得/解放する形になる
null をセットすれば事足りるけど、確かにそれだと
どこかに残ってる可能性があるから怖いね。
でもどこかに残ってるってことは不正アクセスの可能性があるわけで……。
まあそんなプログラムは C だったら組まないか……。C++ だからありうる話だね。納得。
>あんまし今回関係なくない?
大がかりにならない設計を考えると、まず最初にデザパタの一部が思い浮かんだんだ。
考えてみれば、デザパタも小さいとは言えないかもしれない。
>C++でいい気がする
C しか使えない or C の方が使いやすいって人が多かったってことなのかな。
もしくはやっぱり多くの人に使ってもらうためとか。
0580名前は開発中のものです。2006/01/24(火) 02:19:15ID:0JfXcgLd
>575
これかな?
ttp://gamdev.org/w/?%5B%5BToHeart2%A4%DB%A4%ABAquaPlus%2FLeaf%A4%CEGPL%A5%B2%A1%BC%A4%F2%A4%A4%A4%B8%A4%EB%A5%B9%A5%EC%5D%5D#contents_1
0581名前は開発中のものです。2006/01/24(火) 08:59:51ID:uVf78Ngo
米国で単語の綴りがちゃんとかけない人ってのは多いらしいけどな
日本でも漢字は危ういことになっているみたいだが
0582名前は開発中のものです。2006/01/24(火) 10:06:52ID:UwwVkN5e
>>580
それ、
> じゃあ俺がreserveをresizeに直したのをUPするよ。
が入ってない。多分元のまんま。

引き続き、リファクタリング済みソースUPまだぁ?
0583名前は開発中のものです。2006/01/24(火) 11:42:49ID:zLgleQEi
>>547
> C++は元々ある程度大きなプログラムを集団作業で作るために開発された
> 言語だ。大して大きくもないシステムを一人で保守するために、あんまり
> 大げさな設計をする必要はない。ベタでいい。

んあー、C++で同人シュー何本も1人作ってるけどどう見ても便利です。本当に(略)

MSX時代や98時代にグダグダと低レベルな実装してたのがSTLやboostで一撃で済むようになったし、
自作ライブラリの再利用や書き直しはすんなり行くようになったし、
コードの影響範囲が絞れるから原因不明のバグで1日つぶれるようなことも皆無に近くなったし、
ありがたいことこの上ないんですけど。
むしろこんなに楽になったらプログラミングの労働価値なくなるよなとか危機感抱きはじめてる。

そりゃC++の習得には結構な時間投資したし、C++自体は欠陥だらけの言語だと思うけど、
いったん作法が身についてしまえば、1人だろうがチームだろうがこれ以上の道具はないと思うけどなあ。
(WindowsではもしかしたらC#が来るのかもしれんけど)
最高ではないが最良の武器ってやつ。少なくともCなんてもう馬鹿馬鹿しくて使ってらんない。

つーか、何か仮想的を想定してない? 不必要に仰々しいOOP論者とか。そゆのは俺も嫌いだし。

>>546
> 俺だってその気になればC++使えるけど、デバッグ時に
> いちいち参考書読んで調べながら、なんてやってられんだろう。

いくら複雑な言語とはいえ、いちいち本開くようでは使いこなせていないにもほどがあるでしょ。
単にキミがC++初心者なだけでは? C初心者の頃もそんな感じじゃなかった?

アドバイスすると、C++を使う上での原則やよく使うAPIをテキストファイルにでもまとめとくといいよ。
参考書がでかいなら圧縮しなさい。難しい問題に対するのに、ノートを取りもしない人間が多すぎる。
学生時代に一体どうやって勉強していたのか。
■ このスレッドは過去ログ倉庫に格納されています