10/04/02 13:43:09 312z5Jcj
ゲームしか作らないならそれでも良いけど
4がつばかは昨日までですよ
113:名前は開発中のものです。
10/04/02 16:57:57 PHi8AHxO
>112
ぼくはまさにゲームの話をしてるんですよ。
HSPでPhotoshopでもつくろうっていうんですか?
114:名前は開発中のものです。
10/04/03 13:13:58 9Yh2mBFe
2dスクロールアクションをつくっているんだけど、
SFCのスーパーマリオみたいなオフセット位置の決め方が分からない
具体的にいうと、マリオの向いている方向が、より遠くまで見えて、
急に向きを変えたりしても、違和感なくオフセット位置が動くような。
どなたかアイデアありませんか?
マリオのコードが見たい・・
115:名前は開発中のものです。
10/04/03 14:21:31 /HNuBj6+
>>114
キャラクターの向き boolen D (false右向きR,true左向きL)
キャラクターの位置 integer X,Y
ビューポイントX integer VX (Xに対しての相対位置)
ビューポイントXL const VlX (VXが最終的にあるべき位置)
ビューポイントXR const VrX
if D
{
XVがVlXと同じじゃなければ近づける
} else {
XVがVrXと同じじゃなければ近づける
}
116:名前は開発中のものです。
10/04/03 18:50:36 GPcMKza7
C++しか知らん俺にHSPはどんなことが出来るのか教えてくれ
○○の処理がどんな風に出来る、とか
117:名前は開発中のものです。
10/04/03 20:52:08 2IE5q2HF
ウインドウの作成が1行でできる
他色々
118:名前は開発中のものです。
10/04/04 14:23:19 hFzrHQaf
>114
洞窟物語のような感じかな?
119:名前は開発中のものです。
10/04/05 07:33:20 cS3R7I9s
>>116
何も書かなくても問題なく実行できる
120:名前は開発中のものです。
10/04/05 13:48:01 dc21abzx
>>116
Win32 API他、既存のDLLがけっこうお手軽に利用できる。COMも使える。
121:名前は開発中のものです。
10/04/05 13:50:56 dc21abzx
ていうか、マニュアル読むかコンテストのページ見た方が早い。
122:名前は開発中のものです。
10/04/05 20:01:05 dKgEjKp6
>>116
まず最初に
picload "hentai.jpg"
の一行でウィンドウに画像が表示できる
C++だとハードやOS、jpgのファイル構成の知識も必要ですが
hspならこれ一行、マジでこれ一行
「main」とか「void」とか不要、メモリの確保も解放も不要、DLLも不要
他に、ボタン判定、waitなどゲーム制作的なことは
一行で足りることが多い
>>116 さんは凄腕かもしれないけど
おれならC++のコンパイラだけ渡されて
これらを実現しろと言われるとマジで気が滅入る、というか逃げる
123:116
10/04/05 23:05:57 LnGtu5ZQ
なるほど、なんとなく分かった。ありがとう
124:名前は開発中のものです。
10/04/07 08:40:57 Vkp0Vww4
>>103
変数には文字型配列を使うと管理が楽だよ。
応用すれば何かを重ねて表示する場合にも使える。
基本入出力命令と文字列操作関数はマスターした方がいいかも。
キャラ同士も地形と同じ考え方でいいよ。
移動するたびにキャラ番号を座標から導き出したマスに置く。
ただすでに味方が置いてあるマスの場合、そこには一つしか番号が置けない欠点があるね。
サイズが異なったものや斜面処理でも条件式を加えれば応用は可能だよ。
昔のゲームソフトは速度的に遅かったからそういう処理が多かったんだ。
125:名前は開発中のものです。
10/04/07 21:28:29 h2+BYV8H
>>124
RPGならともかく、アクションはそれじゃダメだろ
ポインタですべてのインスタンスを配列かリストで管理すべき。
使用中のインスタンスと未使用のインスタンスを持って、
適宜相互にインスタンスを移動するのが普通だし、汎用的。
それより、アクションはインスタンスの状態管理が重要
状態遷移マシンを作ると楽にアクションゲームが作れる
126:名前は開発中のものです。
10/04/11 13:00:42 sX0GCi0v
>>124
え゛?
数値型配列ではいけないの?
127:名前は開発中のものです。
10/04/11 18:27:05 60JK+RHt
今hmm.dll使ったゲームを何人かにテストプレイしてもらったんだけど
画像の表示位置が微妙にずれる人がいたんだが
グラフィックボードによっては表示位置や仮想画面からの取得位置がずれたりするもんなのかな?
128:MIAのすごいスクリプト(原理はわからん)
10/05/12 20:33:05 zIpdnuJi
前半
; 重力を考慮した状態で硬いバネを複数繋ぎ、ヒモの動きを再現する ※位置と速度の更新方法が、ここまでのサンプルと変わっています
#define N 20 ; 制御点の数
#define L 10.0 ; 制御点を繋ぐバネの長さ
#define G 1.0 ; 重力
#define R 0.98 ; 速度に掛けるダンパー値
#define K 1.0 ; ばね定数
; データ領域の確保 (x,y = 現在の座標、ox,oy = 移動元の座標、vx,vy = 速度)
ddim x, N : ddim y, N : ddim ox, N : ddim oy, N : ddim vx, N : ddim vy, N
*MAIN
stick bt, 256 : if bt & 128 : end
; 移動元の座標を保存
repeat N
; 地面と接触していたら速度を減らす(摩擦)
if y(cnt) >= 460 : vx(cnt) *= 0.8
ox(cnt) = x(cnt) : x(cnt) = limitf(x(cnt) + vx(cnt), 20, 620)
oy(cnt) = y(cnt) : y(cnt) = limitf(y(cnt) + vy(cnt), 20, 460)
y(cnt) += G ; 重力を加える
loop
129:MIAのすごいスクリプト(原理はわからん)
10/05/12 20:34:43 zIpdnuJi
後半
; 結果を安定させるため、ある程度繰り返す
repeat 16
; マウス操作(クリックで端を引っ張る)
if bt & 256 {
x(0) = double(mousex) : xv(0) = 0.0
y(0) = double(mousey) : yv(0) = 0.0
}
; 力の解決
repeat N-1 : t = cnt + 1
; バネにかかる力の式 (f = kd)
dx = x(t) - x(cnt) : dy = y(t) - y(cnt)
d = sqrt(dx * dx + dy * dy) : if d = 0 : d = 1.0
f = (d - L) * K : ff = f * 0.5 / d
; 作用・反作用の法則に基いて、力を加える
x(cnt) += dx * ff : x(t) -= dx * ff
y(cnt) += dy * ff : y(t) -= dy * ff
loop
loop
; 速度の更新(元の状態との差を次フレームの速度とする)
repeat N
vx(cnt) = (x(cnt) - ox(cnt)) * R
vy(cnt) = (y(cnt) - oy(cnt)) * R
loop
; 描画
redraw 0 : color : boxf : color 255, 255, 255 : pos x(0), y(0)
repeat N : line x(cnt), y(cnt) : loop : redraw 1 : await 15
goto *MAIN
130:名前は開発中のものです。
10/05/13 14:52:42 b/2h1Ezh
>>1
なにこのひどいスレタイ
期待の星ってアホですかと
131:名前は開発中のものです。
10/05/15 20:29:54 aV0xMDug
九年たって。
132:名前は開発中のものです。
10/05/17 09:35:01 k4j0vMVC
>>80
Yahoo! JAPAN IDが無効です。