DeadlockのDeadlock
難民したくねーんだけど、結果難民しちゃってるボログ

スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
記事No.[] ■ --.--.--.--. (--:--)
スポンサー広告 ■ ■
えるけーピーッ!
 よっス! YHVH++@車掌置き去り。 ちょーw です。

 さてさて。 LKP関係をサボってるわけじゃああり
ませんでー! 紆余曲折しながらではあるけれど、
少しずつプログラム実装期間に入ってましたぃー。

 と、言ってもまだまだ設計中なんだけどねぃ(^^;


 今悩ましい点は


 LKPはマウスとキーボードをサポートする仕様


 という点。 基本的に両者の入力を周期でポー
リングして、今どういう状況なの っていうのを
取得せねばなりまへん。

 この処理はにメイン関数でやっちまおうと思って
いたり。 メイン関数内に平べったく色々と書く
つもりはないので、入力データの獲得と振り分けと
大まかな状態遷移制御だけやらせようかとー。


 ほんで。

 1ループ50ms。 いまんところ50msでポーリング
させようと思っているんだけど、マウスとキボドの
状態って同時に値取れちゃうんかなー。

 同時にとれない場合は問題ないくて。 取れた
ほうの動きで処理すればいいんだけど、同時に取れた
場合はどうすっかねー。

 ンマァ、どちらを優先度高にして同時の場合は
片方を無視(破棄)しちゃえばいいかな。 それとも、
無視しないで順番に処理させるべきかなー とか。

 キー入力をシビアに受け付けるようなアクション、
シューティングゲームじゃないから、無視する案で
いいとは思っている・・・たぶん。


 あとは。

 あんまり、マルチスレッドプログラミングは
したことねいんだけど、今回はアニメーションと
いう要素も考慮しなければいけないので、結構
スレッドを作る事になりそう。

 尻愛に聞いたところ、同期取るのが面倒になる
からあんまり多すぎないほうが といわれたので
一応念頭にはおいておくつもりではいる!

 が、アニメ描画するものは個別にスレッド化し
勝手にぐるぐるさせておこうかな とも考えてたり。

 アニメスレッドは一つだけ作って、その中で
アニメする絵を識別して処理とでもよいんよね。
スレッドを個別にするか一つにするかは現在お悩
み中。


 あと、描画関連については。

 双方向リストのキュー処理にしようと思って
ましてん。 描画スレッドを一本起こして、そこには
キューが一つあって。

 基本的にDXライブラリで実際に描画するのは、
描画スレッドだけ。 描画したい時は、描画スレ
ッドにメッセージ送信してキューに突っ込んで・・・
のような。

 こうすることによるメリットは、キュー制御だけ
しておけば、描画の制御楽っぽい ということと
描画関係のDXライブラリを直接触るのは描画スレ
ッドだけ ってなってすっきりするかも? と。


 んー。 内部設計書を起してみてはいるけど、
自分の文章力の無さに愕然(orz あまりに伝わらない
と困るから、設計書にサンプルコード乗せてまったw
(最終手段な気がすうーw)

 ま、そんな訳。
であであ!
スポンサーサイト
記事No.[480] ■ 10.04.2007.Thu. (18:57)
プログラミング話ひとこと 0
創作活動開始
 よっス! YHVH++@まだまだぶつ森にハマってる です。

 先日ちょっと面白そうな事にって記事を書いたけど、
上がってる記事の通り、Laevateinn Kreuz Project と
いうのに参加してみることに。

 プロジェクト内で幾人かはRO内、或いはブログなどで
繋がりのある方がおりましたが、半分以上は初めての方
ばかり。

 丁度募集している担当部分もプログラマって事でしたし、
ゲームのプログラムってのを組んでみたかったりもした
ので。

 ROでもなければSurtでもないプロジェクトへ参加する
には二の足を踏みそうだけど、今回は幾人かご存知な
人もおったので迷わず手を上げてみました(フフフ

 これを機に楽しくスキルアップできればいいな とも
思ってたり。


 で、OpenGLの話に繋がるのですよ(うんうん プロジ
ェクト内のさんでーさんが苦労して今回用に組み上げた
ソースを覗いてみました。

 DirectXよか簡単そうですぞー! 凄く分りやすい
SDKです。 PS/PS2/PS3に採用されているみたいなので
今回のシステムでこの機能が足りない! ってのは
ないでしょう。(十分すぎるってことー

 IDE環境はBCC Developerってのをチョイス。 コン
パイラはBorland C++ Compiler 5.5。 IDE環境は
Visual Stadioでも構築できるんだけど、自分だけVS
だと話が通じない場合があるかもしれなので、BCC
Developerでやってみる事に。


 Surtを舞台としたFFTタイプのゲーム。 妄想した
だけでも面白そうだ。 Surt外の人には登場キャラ
などが一切分らないだろうが、分らないけど面白いね
なーんていうものが出きれば最高だねー。

 絵やシナリオなどは結構進んでいるようなので、
遅れをとらないようにしないと。 ROで遊んでばっか
いないでこっちも頑張らないと!

 ま、そんな訳。
であであ!
[創作活動開始]の続きを読む
記事No.[412] ■ 06.12.2007.Tue. (23:55)
プログラミング話ひとこと 0
おーぷんげる
 よっス! YHVH++@過去か未来 現在はない です。

 ちょっ面白そうな事に足を突っ込み始めてみた。
1Dayチケ使わないと てな大義名分の元にRO再開!
って気分になっていたけど、どうなるやら・・・。

 でも、早めに使ってかないと捨てる事になりそ
うな様相を呈してきたので、今晩からログインして
みましょっか。

 面白そうな事の詳細は、後日お知らせすると思い
ますので、それまで覚えておいてください!
(覚えておかないだろ ぢょうしきてきに・・・)


 あとは、昨晩今泉君をDJ-MAXに誘ってみた。
色々と忙しく一緒には遊べなかったけど、メッセで
おもしれぇって言ってたな。

 誘って正解! 基本的にビートマニアのアバター
モード搭載っていうだけなんで、一人で黙々と練習
ってゲムだけどねー。

 で、色々忙しいつつもおいどんはLv18になたー!
やっとだー。 HPが3増えました! たぶん3回多く
間違ってもOKになったんだと思う(良く分ってない

 今泉君に負けないように日々精進せねばぁ。



 面白そうな話関係で、OpenGLなるものの調査を
してみる事に。 複数サイトを颯爽と(?)斜め読み
してみたけど、DirectXと違い随分分りやすい感じ。

 どっかのサイトの記事にも書いてあったけど、
グラフィックス関係のプログラミングってやりたい
処理(主に描画だと思うが)に到達するまでに、
よくわかんねー呪文をいっぱい唱えないといけない
んだよね(笑)

 OpenGLってのはそういうのが少なめみたいだ。
あとは、マルチプラットフォームだのでOSを選ばず
移植がらくちーん みたいだ。

 自分の知らない技術をお勉強するのは久しぶり。
へぇ~こんな事できるんだ とか解って結構たの
しいよ!

 なんだか、面白そうな事を妄想するだけで楽しく
なってきたでよ~(また、妄想かよ!!><

 ま、そんな訳。
であであ!
[おーぷんげる]の続きを読む
記事No.[408] ■ 06.07.2007.Thu. (23:55)
プログラミング話ひとこと 0
Ro_Surt_Main.c
 よっス! YHVH++@今日は忙しかった!! です。

 プチ専門的な?記事だで。 あったらいいなをぷろぐらむに
してみました! なんだこれ? って思った人は見ないほうが
目によろしいですよ(笑)


#include "stdio.h"
#include "Ro_Surt_Player.h"
#include "Ro_Surt_Guild.h"

#define PRINT_FORMAT "Guild Name : %s\n"\
           "Guild Master Name : %s\n"\
           "Player Name : %s\n"

extern BOOL Judgment_Proc(SURT_GUILD_ID GuildID,
             SURT_PLAYER_ID PlayerID);

/*--------------------------------------------
 Function Name : まいん関数
 Argument : Notthing
 Return : Notthing
 Author : YHVH++@Surt
 Date : Jul.06.2006
 Remarks : 動けぇえええ!!!
--------------------------------------------*/
main()
{
 unsigned int i = 0;
 unsigned int j = 0;
 unsigned int k = 0;
 JUDGE_DATA Judge_Data[GUILD_TOTAL_NUM];

 memset(Judge_Data,0x00,sizeof(Judge_Data) * GUILD_TOTAL_NUM);

 for( i = 0 ; i < GUILD_TOTAL_NUM ; i++ )
 {
  Member_Num = Get_Guild_Member_Num(i);
  for( j = 0 ; j < Member_Num ; j++ )
  {
   if( FLASE == Judgment_Proc(i,j) )
   {
    Judge_Data[k].Guild_Id = i;
    Judge_Data[k].Player_Id = j;
    Judge_Data[k].Guild_Master_Id = Get_Guild_Master_ID(i);
    k++;
   }
  }
 }

 for( i = 0 ; i < k ; i++ )
 {
  printf(PRINT_FORMAT,Get_Guild_Name(Judge_Data[k].Guild_Id),
     Get_Guild_Master_Name(Judge_Data[k].Guild_Master_Id),
     Get_Player_Name(Judge_Data[k].Player_Id));
 }

 return;
}



 cソースコードが読める人だけどうぞ。 読めない人はごめん
なさい。 コンパイラなぞ通してないから、エラーでまくりんぐ
だろうょ(ァー < っか、hファイルないやん(笑)

 ゲットできたデータに誤りがなければ、余計な時間使わなくて
済むのに。 もっと楽しくできるのに。

 ま、そんな訳。
であであ!
[Ro_Surt_Main.c]の続きを読む
記事No.[187] ■ 07.07.2006.Fri. (07:39)
プログラミング話ひとこと 2
ユーザープログラマブル
 よっス! YHVH++@週末(´・ω・`)マーダー? です。

 Gvのレポットを書く前に。 明日ホムンクルスがインプリされる
らしいので調べてみると簡単に下記のサイトを発見。


 ホムンクルスAIマニュアル


 状態遷移図とか簡単な関数の説明もあったりと、かなり役にたち
そうなサイトです。

 わたしゃあーたん持ちじゃないので、へーこんな風に作るんだー
程度に見てませんけどね。 ソース見てみたけど、本格的なプログ
ラムが組めそう。

 言語はluaってもの。 いぐぐに聴くまで調べもしなかったので、
初耳な言語でございますょ(笑) 中を見てみるとVBAっぽい感じ。
lua作った人も他の言語を参考に、いい所だけつまんで作ったん
だろうから似てるだろうけどもも。


 関数について。

 ・Attack (id1,id2)
  ホムンクルスにid2を攻撃させる関数。 id2にキャラクター
  idを入力したら、PKし始めるバグが! とか?

 ・IsMonster (id)
  ゲーム内の物体がモンスターかモンスターでないかを判別する
  関数。 ホムあーたん2人いて、相手のホムidを入力したら
  モンスターって認識してホム vs ホムになるバグが! とか?


 まー、海外でも動かされてるんでしょうから、こんなわかりやすい
バグはでてこない
でしょうけどもね。(どうかな?(笑))

 プログラムってもんを触ったことがない人は、多少なりとも勉強
をしないと組めないかとん。 ネット上にサンプルコードは山の
ように上がると思いー。

 まずは、それらを自分の好みに弄ってみるといいねー。 プログ
ラムなんてできるか! って言う人はこれを機にチャレンジして
みては? 明確な目的があるとやる気(知識吸収率)が違うよー。


 ホムがノーマナーチックな事しても。 すみませんデバッグ中
なんです!
 と、いつまでもデバッグ中のホム(`A') そんな言い訳が
通用する時代に?(フフフ (色んな意味で暗黒じだi(ry)

 しっかし、これらを修正したりできない人はどうするんだい?
できない人もいると思うのよ。 できないやつが悪い! とかホムで
遊ぶな! とかそういうのは無しの方向で。

 やっぱ、デフォルトで遊ぶしかないってことすかね?
(大抵デフォルトってのは、しょっぱい出来なわけで・・・(´ω`))

 ま、そんな訳。
であであ!
記事No.[83] ■ 03.13.2006.Mon. (14:19)
プログラミング話ひとこと 0


| ホーム |


Copyright YHVH++ All Rights reserved
Powered by



■ コンテンツ
■ 最近起こした記事
■ ひとこと集

 

LKP公式サイト LKP公式サイト


Ragnarok Online


Phantasy Star Universe
イルミナスの野望


踊る初音ミク

■ 記事倉庫

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。