トップページgamedev
986コメント278KB

HSP - Hot Soup Processor [15]

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2007/06/03(日) 14:49:29ID:15sfFksi
       (  ,,,)
        .(  ,,)      スクリプト言語 HotSoupProcessor について
        ( ,,).        ゲーム製作の視点から、また〜りと語り合うスレ。
     , -──- 、
    (,;::-──-; )-、
     .|` ̄ ̄ ̄´;;|ヽ l   * 質問する前に検索してみる事
     l;    :::;;;l-' /   * ヲチ、ネタなどはスレ違い
    ,-ヽ───.'-、´..   * 歴代スレ、関連サイトは >>2-4 あたり
    ヽ ──── '

  ONION software (本家)
   http://www.onionsoft.net/
0678名前は開発中のものです。2007/10/11(木) 08:23:11ID:3jtTt8Hm
> ttp://cgi.www5d.biglobe.ne.jp/~ochikko/board3/wforum.cgi

こっちでも暴れてるよ
0679名前は開発中のものです。2007/10/11(木) 13:44:49ID:2ekqqZ/j
>>670
>もしかしたら、HSPも数年後にはユーザーが1/100くらいに減っているかもしれないよ
99/100はActiveBasicだなw
0680名前は開発中のものです。2007/10/12(金) 16:01:56ID:aCsQmG8w
>>678
ほんとだ。うげw
0681名前は開発中のものです。2007/10/12(金) 17:58:06ID:IRbxIDZA
nってあれが素なんだろうな。
いきなり本名なのったりするし、
なんかかわいそうになってきた。

ウーパールーパーはただの厨房
0682名前は開発中のものです。2007/10/13(土) 00:09:18ID:MW9BER0w
つかいま前の掲示板って存在してるの?
アク禁なのか?それとも一時停止なのか?
今の掲示板のIPみるといろんなIPあるけど・・・
0683名前は開発中のものです。2007/10/13(土) 12:10:51ID:TZPCvtur
カスども、間違ってもプログラマーを名乗るなよ
0684名前は開発中のものです。2007/10/13(土) 19:25:49ID:ASo53Z3x?2BP(620)
てことは、ヅーラー・・・
0685名前は開発中のものです。2007/10/13(土) 19:27:20ID:ExKO2MX8
プリグラマーだろう
0686ヅーラー2007/10/13(土) 20:02:52ID:FZObQjFq
いやな肩書きだな
0687名前は開発中のものです。2007/10/14(日) 05:39:07ID:WiEI2McN
2つのベクトルから角度を求める便利な関数はないもんでしょうか
0688名前は開発中のものです。2007/10/14(日) 05:57:12ID:CV5jooqk
二つのベクトルから角度??
0689名前は開発中のものです。2007/10/14(日) 07:12:36ID:SnaweCQe
内積!内積!
0690名前は開発中のものです。2007/10/14(日) 09:27:45ID:uHgtiyjS
>>687はHSPの前に数学のお勉強
0691名前は開発中のものです。2007/10/14(日) 11:30:45ID:WiEI2McN
すみません・・・
内積して正規化まではしたんですが、仮に cosθ=1/2 と出たとすると
角度θ=60 ってのは感覚で判るんですが、その計算ってどうやるんでしょうか?
0692名前は開発中のものです。2007/10/14(日) 11:36:59ID:GPpg5kqb
悩むくらいなら、テーブル作っておいて変換すれば?
0693名前は開発中のものです。2007/10/14(日) 11:43:23ID:6foAiAAu
公式あったような。
アークコサイン
ARCCOS(X) = -ATN( X / SQRT( -1 * X^2 + 1 ) ) + 1.5708

ためしてないけどたぶんあってる。
0694名前は開発中のものです。2007/10/14(日) 12:27:23ID:WiEI2McN
>>693
ありがdです、解消しました!
0695名前は開発中のものです。2007/10/14(日) 13:46:45ID:CazHxYfJ
>>694
hspmath.asにacosマクロが定義されてるよ。
0696名前は開発中のものです。2007/10/14(日) 14:55:42ID:WiEI2McN
   。 。
  / /
( ∀)
0697名前は開発中のものです。2007/10/14(日) 15:16:32ID:sC1wsMWc?2BP(620)
ソースが1000行こえると楽しいな
0698名前は開発中のものです。2007/10/14(日) 17:57:37ID:6foAiAAu
おれは1000行こえると飽きるのがおおい
1000行こえて1週間ぐらいおいて見てみると
無駄がおおくてまた1からつくりたくなる。
だから進まない・・・
0699名前は開発中のものです。2007/10/14(日) 22:40:25ID:aVkceQqU
>>679
HSPなみに作業を抽象化できるライブラリがあればABでいいと思うが、
今のABってC++をSDKで使ってるのとあまり変わらなくね?
0700名前は開発中のものです。2007/10/14(日) 22:45:15ID:aVkceQqU
>>677
だから、いろいろ言いたい気持ちはわからんでもないって言ってんじゃん
0701名前は開発中のものです。2007/10/16(火) 17:35:40ID:aqiQGVMR
質問なんですが、ゲームのマップを作るのに広いマップを作りたいんですよ。それで、mapchip.cnt=0に設定して
0702名前は開発中のものです。2007/10/16(火) 17:38:04ID:aqiQGVMR
>>701の続き
1600回くらいループさすわけですよ。そしたら、fpsが40とかに成るわけですよ。しかも何段か作りたいので、
その1600を8回とか9回とかループさすわけですよ。もうfpsが20とか10とかに成っちゃうんですよ。
対処法とか無いんでしょうか?
0703名前は開発中のものです。2007/10/16(火) 17:39:03ID:aqiQGVMR
mage
0704名前は開発中のものです。2007/10/16(火) 17:43:45ID:h7U/2WCz
毎回マップ全域を再描画する必要はないだろ。バッファに書いておいて、必要に応じて書き換える。
0705名前は開発中のものです。2007/10/16(火) 18:03:12ID:aqiQGVMR
>>704
有難うございます!やってみます!
0706名前は開発中のものです。2007/10/16(火) 18:17:21ID:aqiQGVMR
あと、directfixでウィンドウ上のマウスの位置を取得する方法は、無いのでしょうか?
API関数を呼びさせば出来るのでしょうか?
0707名前は開発中のものです。2007/10/16(火) 18:20:01ID:aqiQGVMR
directfix ×
hspdxfix ○
でした。関数使わずに出来るのでしょうか?
mage
0708名前は開発中のものです。2007/10/16(火) 18:23:32ID:h7U/2WCz
mousexとmouseyは?スクリーン座標だっけこれ?
0709名前は開発中のものです。2007/10/16(火) 18:29:14ID:aqiQGVMR
>>708
それが、hspdxfixをインクルードしたら、使えなくなるんですよ。hspdxfixって入れる必要あるんでしょうか?
60体くらい同時にモンスター動かしたいんですよ。もしかして、違う言語に移動した方がいいのでしょうか?
もしそうなら違う言語紹介してもらえないでしょうか?
0710名前は開発中のものです。2007/10/16(火) 18:31:03ID:d0k3xzR9
ginfo_mx,ginfo_myでおk
0711名前は開発中のものです。2007/10/16(火) 18:33:53ID:aqiQGVMR
>>710
ごめんなさい、スクリーン上という意味で書いていました。
ginfoなら、フルスクリーンか、固定しなくちゃいけないじゃないですか。やっぱ、スクリーン上のは無いんですかね?
0712名前は開発中のものです。2007/10/16(火) 18:58:30ID:h7U/2WCz
ウィンドウ上なのかスクリーン上なのかどっちなんだ
0713名前は開発中のものです。2007/10/16(火) 19:00:56ID:aqiQGVMR
>>712
デスクトップ全体から見た方じゃなく、ウィンドウ内の座標の方です。
0714名前は開発中のものです。2007/10/16(火) 19:15:08ID:h7U/2WCz
#uselib "user32.dll"
#func global GetCursorPos "GetCursorPos" var
#func global ScreenToClient "ScreenToClient" int, var

dim point, 2

repeat
GetCursorPos point
ScreenToClient hwnd, point

redraw 0
color 192,192,192
boxf
color 0,0,0
pos 0,0
mes "(" + point.0 + ", " + point.1 + ")"
redraw 1
await 16
loop

win32APIを使ってみた。これでおk?
0715名前は開発中のものです。2007/10/16(火) 19:17:37ID:aqiQGVMR
>>714
有難うございます。遣ってみますね!
0716名前は開発中のものです。2007/10/16(火) 19:24:58ID:aqiQGVMR
>>714
やっぱりダメでした。やっぱりhspdxfixをインクルードしたら、勝手にデスクトップの
画面上全体の座標に切り替わっちゃう見たいです。有難うございました。
キャラ60体くらい出すつもりですが、directx使わなくて快速に動作するのでしょうか?
0717名前は開発中のものです。2007/10/16(火) 19:50:51ID:QWCr2KAL?2BP(620)
hspdxfixで普通にmousexとmousey使えるんだが・・・

gsel 0 // オブジェクト描画先指定

これをhspdxfixとかの設定後に追加してみてはどうだろうか
0718名前は開発中のものです。2007/10/16(火) 20:01:50ID:KOpIoF7r
#include "HSPDXFIX.as"
#const SCRW 640
#const SCRH 480
#define GET_WINPOS wx0 = ginfo(6)-SCRW : wy0 = ginfo(7)-SCRH
#define MOUSE_GETPOS(%1,%2) %1= limit(ginfo(0)-wx0,0,SCRW):%2= limit(ginfo(1)-wy0,0,SCRH)
screen 0, SCRW,SCRH , 4:GET_WINPOS
es_ini:if stat :goto *owari
es_screen SCRW,SCRH,32,0,1,0:if stat :goto *owari
onexit goto *owari:oncmd gosub *window_moved , $03
repeat
wait 0:stick ky:if ky:break
MOUSE_GETPOS mx,my
title strf("x=%04d",mx)+strf(" y=%04d",my)
loop
*owari: es_bye:end
*window_moved: oncmd 0:GET_WINPOS:oncmd 1:return
/* 眠いので説明省略。 */
0719名前は開発中のものです。2007/10/16(火) 20:08:14ID:aqiQGVMR
>>717
うおおおおおおおお!できました!!本当に有難うございます。
>>718さんも有難うございました!
何処かのページにgselは使えないとか書いてあったんですよ。
皆様本当に有難うございました。
0720名前は開発中のものです。2007/10/16(火) 20:20:57ID:QWCr2KAL?2BP(620)
>>718はウィンドウ外でもマウスの座標を取得できるから便利だな
0721名前は開発中のものです。2007/10/16(火) 20:39:12ID:p3Uk3W8J
その質問どっかの過去ログなかったっけ?
あとあげんな氏ね
0722名前は開発中のものです。2007/10/16(火) 20:43:11ID:8SIQqS8P
FEやTOのようなSRPG作った人いる?
0723名前は開発中のものです。2007/10/16(火) 20:50:00ID:SVmpAyrU
FEやTOってなに
0724名前は開発中のものです。2007/10/16(火) 21:03:39ID:8SIQqS8P
FE=ファイアーエムブレム
TO=タクティクスオウガ
0725名前は開発中のものです。2007/10/17(水) 13:19:44ID:bdrMLigS
いません
0726名前は開発中のものです。2007/10/17(水) 14:15:47ID:K76yJdok
コンテストにあったやつのことか?
0727名前は開発中のものです。2007/10/17(水) 17:46:17ID:3ibMdIEk
いや、単純な興味本位。
HSPでそういうSRPGがあるなら遊んでみたいと。
0728名前は開発中のものです。2007/10/18(木) 18:02:07ID:cVEjT56E
マップ移動の時1600回程回転させて、スプライトを書いているんですが。hspdxfixでバッファにスプライト
書き込むことは可能ですか?
0729名前は開発中のものです。2007/10/18(木) 18:15:11ID:e5xKYDde
急募:エスパー
仕事内容:難文読解
0730名前は開発中のものです。2007/10/18(木) 18:19:34ID:cVEjT56E
ごめんなさい。もう一度自分で考えて見ます。
0731名前は開発中のものです。2007/10/18(木) 18:44:40ID:cVEjT56E
hspdxfixを使ってます。取り合えず、考えましたがまったく分りません。多分俺の言っている事も分らないと
思いますが↓のやつをメインループに描いているのでfpsが37とかまで減ります。変わりにes_xferをつかって
ループさすとエラーがでました。どうしたらいいのでしょうか?取り合えず、マップを描いています。

repeat 1600
cn=cnt
mchin=mapo.cn
mapx=mnx*30+39+mny*-30-mzx
mapy=mnx*15+11-mny*-15-mzy
es_set cn,mapx,mapy,mchin,,-cn+10000
if mnx=39{
mny++
mnx=-1
}
if mny=40:mny=0
mnx++
loop
分りにくくてスイマセン。
0732名前は開発中のものです。2007/10/18(木) 18:51:04ID:msYEoCL7
とりあえずインデントしろ
0733名前は開発中のものです。2007/10/18(木) 18:53:38ID:msYEoCL7
repeat 1600
cn=cnt
mchin=mapo.cn
mapx=mnx*30+39+mny*-30-mzx
mapy=mnx*15+11-mny*-15-mzy
es_set cn,mapx,mapy,mchin,,-cn+10000
if mnx=39{
mny++
mnx=-1
}
if mny=40:mny=0
mnx++
loop

しょうがないからインデントしてやったぞ。
あと、エスパーの到来を待ったほうがいい。
0734名前は開発中のものです。2007/10/18(木) 18:55:36ID:msYEoCL7
できてなかった。ごめんな。
0735名前は開発中のものです。2007/10/18(木) 19:05:31ID:cVEjT56E
有難うございます。 エスパー待ってみます。
0736名前は開発中のものです。2007/10/18(木) 19:25:06ID:es5Hc6lB
机の上においてある紙を斜め上から見たときのように、
bmpを手前は大きく、奥にいくにつれ小さく表示したいんですが、
どの命令をつかえばいいんでしょうか?
07377362007/10/18(木) 19:28:29ID:es5Hc6lB
自分で読んでてても分かりにくかったんで画像書きました
こんな感じでbmpファイルを表示したいんです
http://1rg.org/up/55473.jpg
0738名前は開発中のものです。2007/10/18(木) 19:36:57ID:6aLqqmWI
gsquareかな?
3Dのテクスチャと同じ原理なので少々扱いが難しいのでそこは自分で判断してね。
0739名前は開発中のものです。2007/10/18(木) 19:47:17ID:e5xKYDde
>>731
無茶な処理しようとしてるな。>704氏のアドバイスは無視か。
まぁ、そこは説明が面倒だからスルーするとして
とりあえず
repeat 1600
loop
なんて事をするより
repeat 40
repeat 40
loop
loop
のほうが、if文が不要になるし、計算式も単純化できて、
いくらかの高速化が期待できると思うが。

es_xferは、確か・・・
転送先座標が、マイナス値になってたり、
画面外にかかったりするとシステムエラーになったと思う。
es_putとかよりも、条件がシビアになってると考えれ。

・・・で、結局、何がしたいのか書いてないけど
es_setで並べたものを画面に表示したいというなら
es_draw した後、es_sync すれば良いだけだな。

es_xfer で描画バッファへ転送する方法の場合は、
es_sync だけで良いはず。
面倒だから、確認はしてない。
07407362007/10/18(木) 19:53:41ID:es5Hc6lB
>>738
ありがとうございました、試してみます
0741名前は開発中のものです。2007/10/19(金) 04:22:51ID:JgYNlKPO
>>739
遣ってみます。有難うございます。>704さんのを無視したわけじゃなく。バッファに書き込み方が
分らなかったんです。取り合えずxferで試してみましたが、エラー出るしで。有難うございます。
0742名前は開発中のものです。2007/10/19(金) 07:14:50ID:aESobrJS
>>729にワラタw
いいなwそれ
0743名前は開発中のものです。2007/10/19(金) 17:09:56ID:MhmBUV38
>>736
d3module派の俺がd3textureを薦めてみる。
d3moduleに慣れないと難しいがな。

#include "d3m.hsp"
buffer 1
picload dir_exe+"/sample/d3m/crystal.gif"
img_w = ginfo_winx : img_h = ginfo_winy
screen 0
// 画像の四隅を指定
ax = -300, 300, 300, -300
ay = 300, 300, -300, -300
az = 0, 0, 0, 0
// カメラ位置をテキトーに指定
d3setcam 0, -500, 500

d3texture ax, ay, az, 1, 0, 0, img_w, img_h
stop
0744名前は開発中のものです。2007/10/19(金) 20:52:46ID:ldhiNeKH
d3moduleは確かに便利だ。
0745名前は開発中のものです。2007/10/20(土) 12:53:52ID:5rnL9sYj
スクロールバーを自作して文章をスクロール出来るようにしたいんだけど、サンプルみたいの無いですかね?
07467362007/10/20(土) 14:54:43ID:CrZsffz2
>>743
レスありがとうございます
今はgsquareでどこまでやれるか試しているので、限界感じたらd3moduleにも挑戦してみます

それで、gsquareの質問なんですが、
変数定義して、404*204のbmpを読み込んで、
a=0,403,403,0
b=0,0,203,203
c=0,403,403,0
d=0,0,203,203
gsquare 2,a,b,c,d
とやると表示したいところよりずれてしまいます
何が原因なんでしょうか?
0747名前は開発中のものです。2007/10/20(土) 16:10:23ID:U74mIrzj
>>746
d3moduleはHSPの標準命令で実装してるからgsquareと同じだよ
0748名前は開発中のものです。2007/10/21(日) 03:37:32ID:DUzVUlIb
原因不明の謎のバグが出ちゃうことって、ない?自分のプログラムが書き間違ってるよ
うに思えない。てか1行なんだから書き間違えようがない。ところがその行とは全然関係
ない部分がバグる。今までちゃんと動いていたのに、その行を加えたら動作がおかしく
なる。その行がその処理になにか影響を与えているとは思えない。で、苦肉の解決策と
してその行を消して別の書き方に変えたら直った。結局何が悪かったのか分からない。
俺やっぱプログラミングは趣味でやるわ。仕事にはしない。職業人としてのプログラマー
としてやってて、謎のバグに遭遇して、苦肉の解決策が思いつかなかったらもうどうして
いいか分からないもん。
0749名前は開発中のものです。2007/10/21(日) 06:25:30ID:zn7UK/9b
よう、n
0750名前は開発中のものです。2007/10/21(日) 10:03:12ID:0SqaBfvp?2BP(620)
>>749
ワロタwwwwwww
0751名前は開発中のものです。2007/10/21(日) 13:21:43ID:sa1Prw4K
1行をここに書くこともできないアホにはムリだね
0752名前は開発中のものです。2007/10/21(日) 13:58:18ID:ZT1OeCBz
命令一つで
モジュール内の変数やstat等システム変数が書き換わったりするから
そういう部分を把握してないといつまで経っても謎のままだわな。
07537362007/10/21(日) 15:26:57ID:5kwijDTk
>>747
できることは一緒ってことでしょうか?ならこのままgsquare一本で行きたいと思います

>>746で書いたやつの原因が未だに分かりません
test.bmpは200*100です
buffer 2 : picload "test.bmp"
screen 0,200,100
gsel 0
dim a,4 : dim b,4 : dim c,4 : dim d,4
a=0,200,200,0 : b=0,0,100,100
c=0,200,200,0 : d=0,0,100,100
gsquare 2,a,b,c,d
下は実行したときの画像です。左の線が多くて右が無くなってしまいます。
http://1rg.org/up/56055.jpg

しつこくてすいませんが、よろしくお願いします。
0754名前は開発中のものです。2007/10/21(日) 17:12:55ID:DYkVIpdY
動物掲示板内を gsquare で検索すれば
どんな命令なのかが見えてくるかと。

そういうものだと思って我慢して使うか、
あくまでも精度に拘って使用を諦めるか。
本来の目的は何だったかを考えた上で選択するがよい。
07557362007/10/21(日) 18:57:12ID:5kwijDTk
>>754
動物掲示板ってどこか分からないです、すいません
精度悪いんですか…、代わりになるような命令ってあるんでしょうか?
0756名前は開発中のものです。2007/10/21(日) 20:18:05ID:uiPGW4m7
あくまで四角形領域をコピーして四角形領域に形を変えて描くのが目的なんだから、同じ大きさの矩形でテストするのは変
0757名前は開発中のものです。2007/10/22(月) 06:57:01ID:x1Dyr9wf
756と同意見な私。形を変えないならばgcopyを使ってみてね。
0758名前は開発中のものです。2007/10/22(月) 15:15:18ID:onqcNu3Z
>755 動物掲示板については、ここの>85を参照のこと。
代替命令になるかは分からんが、動物掲示板の過去ログに
参考になりそうなスクリプトが載ってる。

他には、変形の精度をウリにしてる画像処理プラグインがあったと思う。
こういう画像処理をする必要に迫られた事がなく、自分で使ってこともないんで、
どれがオススメですか?とか聞かないでクレ。

矩形変形の1dot程度の誤差が、ゲーム内容に致命的な影響を与えるのでなければ、
代替命令探しに躍起になるより、
変形誤差が出るのを前提とした画像処理をするか、
誤差が出たところで問題がないような画面構成とか、ゲーム内容に変更するほうが
良いんじゃないかと、個人的には思うが。
0759名前は開発中のものです。2007/10/22(月) 18:06:14ID:ps7HW4ya
>>648
なら自作すれば良いだけだろ
自分の感性に完全に一致する物を他人を求めて作らせようと言う時点でおかしいんだよ
0760名前は開発中のものです。2007/10/23(火) 01:02:55ID:1joYVNUu
もう誰も話題にすらしてないけど、今年のコンテストってレベル低すぎじゃね?
0761名前は開発中のものです。2007/10/23(火) 01:50:04ID:4Yh03qEb
誰も話題にしない=飽きられたからでは。
0762名前は開発中のものです。2007/10/23(火) 02:27:46ID:7xjqcDwr
もうHSPの時代は終わったってことじゃない?
おいらはRubyにするよ。
0763名前は開発中のものです。2007/10/23(火) 09:53:19ID:fyooIFnP
HSPの時代なんてきてない。
またRubyの時代もこない
0764名前は開発中のものです。2007/10/23(火) 11:16:42ID:Icbt4W1r
nが現れてからEasy3DとHSP本家の掲示板荒れすぎ
ほんとやめてほしい
0765名前は開発中のものです。2007/10/23(火) 12:10:46ID:RQZdtMY5
nってハンドル名か
公式とか見てないけどそんな荒らしが居るのか
0766名前は開発中のものです。2007/10/23(火) 12:40:47ID:1NB+rnUn
観に行っていないが
きっと餡垂れ巣のターン!
0767名前は開発中のものです。2007/10/23(火) 13:27:09ID:IdHO8s2B
ぷまの掲示板でも活躍中だな。
0768名前は開発中のものです。2007/10/23(火) 16:20:21ID:fyooIFnP
あいつもこりないねぇ
0769名前は開発中のものです。2007/10/23(火) 19:37:24ID:Icbt4W1r
さくらさんとこの掲示板にもいるのかよ・・・
0770名前は開発中のものです。2007/10/23(火) 20:35:32ID:RQZdtMY5
いったいどんな人物なんだw
07717662007/10/23(火) 22:04:28ID:1NB+rnUn
ジョークで書いたが本当にいるのかw?
0772名前は開発中のものです。2007/10/23(火) 23:37:37ID:fyooIFnP
個人的にnがきてからの掲示板がなんか面白い。
毎日一回は掲示板開くけどほとんど書き込みなかったり、
初心者がくだらん質問書いてるだけじゃつまんないし。
あとnに反論するのはおもろい。リンチしてるみたいで
0773名前は開発中のものです。2007/10/24(水) 03:25:47ID:S0bl67ru
類は友を呼ぶってか
0774名前は開発中のものです。2007/10/24(水) 18:17:36ID:zmWo3DOD
HSP3.1の新刊の話題がない件
0775名前は開発中のものです。2007/10/24(水) 18:31:46ID:TSFrcMcF
来年の3月まで何もおきないとおもう
0776名前は開発中のものです。2007/10/24(水) 19:19:04ID:f64cY3mG
いや10/17に発売したやつのことだろ?
発売日に書店にチェックしに行ったけど、置いてなかったのだぜ
0777名前は開発中のものです。2007/10/24(水) 19:41:31ID:2GQ7eDip
今日初めてHSP3.1をダウンロードしてみて入門のstep5のスクリプト、
cls 0
mes "ボタンを押してみてね"
button "PUSH".*hata1
button "BYE".*hata2
stop
*hata1
mes "あっ、押しちゃったね"
stop
*hata2
end

このまま入力してるのに3行目が無効って出るのはどうして?
>パラメーター式の記述が無効です (3行目)
■ このスレッドは過去ログ倉庫に格納されています