したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

beditor Carbon(仮称)

1高嶺ひじり:2004/11/10(水) 19:55
どうも初めまして、高嶺ひじりと言います。
先日、MacBeatOnlineの方でbeditorのソースコードをXcodeにぶち込んで無理矢理Carbon化するみたいな話が出て、実際にやってみようかなと思ったのですがどうもやり方がよく分かりません。
とりあえず、言い出しっぺであるRenoさんにアドバイスを求めた所非常に困難なもので素人は手を出さない方が無難とのこと。
それでもやってみたいのですがRenoさんはサポートできないとの事。
そこでMacBeatをCarbon化した事のあるPugoさんに何かアドバイスがあればお願いしたいのですが。

2通りすがり:2004/11/10(水) 20:47
ていうか、とりあえずどうしようもなくバグだらけのbeditorをcarbon化するより
一からcarbonアプリとして作った方が手っ取り早いような。

3ぷご:2004/11/10(水) 23:34
高嶺ひじりさん、初めまして。
様子はうかがってました。

2の人の言う通り,一から作ったほうがいいと言うのが僕の意見です。
僕ならそうします。beeditorはソースコードを一目見て,
こりゃ無理だと思いました。MacBeat Carbonとは違います。

新BMSエディタの基本になるソフトを作って,
じっくり拡張していくとよろしいかと思います。

僕自身は問題となっていた「やる気」の面と,
ゲーマーとしての腕の無さもあり、作る気はありませんが,
サポートなら出来るつもりです。

4高嶺ひじり:2004/11/11(木) 16:15
そうですか。1から作った方が良いんですね。

それにしても新BMSエディタの基本になるソフトってどうしよう。BMSCのソースとか参考にした方が良いのでしょうか?
それ以前にCarbonの勉強から一から始めた方が良いのかも。

5ぷご:2004/11/11(木) 23:12
特にCarbonにこだわる必要は無いのですが,
beeditorやMacBeat Carbon、Aqua'nBeatsの
コードを流用できる事を考えるとCarbonが良さそうですね。

一からと簡単に言ってみたものの,まったくの一からでは
大変な作業になってしまう。

僕が個人的にやるとすれば,MacBeat Carbonを参考に
一から作ります。
ですが、 高嶺さんの立場になって考えるなら,やはり
beeditorを基本に動かない部分を削りまくって
とりあえずコンパイルできるところまで持っていき,
そこから足りない部分を作るのが一番効率的だと
思います。

とりあえず、やるべきことは僕がMacBeat Carbonで
やったのと同じ事。まぁ、難易度が違うけど。
・Xcodeでのビルド(コンパイル)環境を整える。
 Xcodeで既存のCarbonアプリをビルドできればOK。
 MacBeat Carbonとか。
・beeditorをコンパイルして、たくさんのエラーが出る事を確認。
 コンパイルするためのプロジェクトファイルを作らないとできない。
 暇があったら僕のほうでやればいいんですが,今はとても忙しいです。
・エラーの出る部分をコメントにしたり,ダミー関数に置き換えたりしつつ,
 とりあえずビルドできる状態に持っていく。
・ビルドできたら,足りない機能や問題点を補っていく。

情報のやり取りはこの掲示板でやれば、いろんな人が集まって
助けてくれるかもしれません。
beeditorを元にする限りはGPLライセンスになるので
どうせソース公開は必須になりますしね。

6ぷご:2004/11/11(木) 23:24
一から作ったほうがいいと書いて、次の日には
beeditorを元にすると書いて,どっちなんだと思われる
でしょうけど、beeditorをそのまま移植という形は
難しいんですよ。

MacBeat Carbonも元祖MacBeatから機能省いてますし。
その上で,自分が作りやすいところを作っていきました。

7高嶺ひじり:2005/05/11(水) 20:24:04
どうも、ご無沙汰してます。
最近ようやく時間に余裕が出て来ましたのでまたこつこつやってみようかと思うのですがプロジェクトファイルを作るにあたってどれを何処に持って行けば良いのかがイマイチよく分かりません。
その辺をどう処理していったら良いか教えて頂けると助かります。

8ぷご:2005/05/12(木) 22:33:51
beeditorには乗り気しませんが、XcodeでCarbonアプリの作り方でも
解説できたらいいな、とは思っています。

Xcodeも最近触ってないんで忘れてきましたが、Carbonは資料少ないんで
今のうちに情報を残しておかないと未来に困るかもしれない。

9ぷご:2005/06/13(月) 00:13:59
beediterのCarbon化は事実上無理。
やるんだったら1から作る。

10ぷご:2005/06/13(月) 00:22:24
さっきプロジェクトファイル作ろうと思って3分であきらめました。
beeditorを参考にすらせず、1から作った方がいいかも。
1からできるかというと、そんな人もいないので、やっぱり無理。

11Reno:2005/06/26(日) 12:30:21
CW9で4時間ほど挑戦。う〜ん、確かにちょっとダメっぽい。
移植上ネックなのは、
0.ソースの整理
  ヘッダーがインクルードされていない、main.h作らないとダメ、プロトタイプ無い等々、
  GCCでは怒られそうな文法エラーが結構ある〜。
1.Windowマネージャ、Dialogマネージャの書き換え
 ー>BediterはWindowRef,ControlRef,DialogRefは、構造体でアクセスされているので・・・
   APIで全部置き換えないとダメ。相当量ある。
   (Rect 宣言して、GetPort...で拾って、の繰り返し;;)
2.イベント処理の書き換え。
 ー>AEはたいしたことない。しかし問題はWindowとControlのハンドリング。
  殆ど不要なのでばっさり書き直したほうがよい。そのままでは動かないかバグる可能性大。
 ー>Controlは厄介?Controlの状態を参照したり、ContorlにCopyBitsしてたりする。
3.Soundマネージャの書き換え。
 無限ループ再生ができないので、AppleのADCを探してSoundManager部分を書き換える、
 あるいはCoreAudioやQuickTimeで書き換える。
4.ファイル保存ダイアログの実装
 ー>これはCarbonでは刷新されているので、全く流用できません。
5.圧縮・解凍機能は、ネットからMacOSX用のソースをひろってくる必要あり。
6.MoreFileは、AppleのADCから拾ってきて使う。ただし若干修正が必要。

ということで、Carbon使いなれている人で、3〜7日くらい。
そうでない場合は、ちょっと無理かも。

それでもやるのなら、こんなプラン?
1.簡単なCarbonアプリを作る。(メニュー処理、ウィンドウの処理、ファイルの保存ダイアログ処理)
2.サウンド再生部分を作ってみる。
3.Bediterの機能を、図解して、解析してみる。
  Carbonの機能の部分と、BediterのBMS部分とが、どこのソースにあるのかを把握する。
4.1を応用して、3の分析結果をもとに、BMS部分を流用して、作り直してみる。

12Reno:2005/06/26(日) 12:34:29
他にもリソースとか、ユニコード、ユニコードファイルパス、ファイルシステムの違い、などの問題もある。

13ぷご:2005/06/26(日) 22:48:22
Renoさんだ!さすがだ!詳しく書いてある!
これだけやるのはきついですね。

14高嶺ひじり:2005/07/22(金) 01:29:40
Renoさん、乙です。
何かもう絶対一見さんお断りって感じがぷんぷんしますね。

15Reno:2006/01/08(日) 19:12:57
よくよく考えてみれば別にCarbon化は不必要で、バグ取りで良いのか。
・起動直後に出るエラーはSndNewChannel()第3引数が0なので駄目なのでinitStereoを渡す。
・DoFileOpen()関数でNULLのbmsハンドルにアクセスするCopyPStr(spec->name,(**bms).bmsfilename);を削除。
・メモリー割当がデフォルトでは少ないので、40MByteにしてみる。
こんな感じでClassicで動くっぽい。
RenoはCodeWarriorしか持ち合わせてないので、報告だけですが〜


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板