HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2013
1101
anothatHSP3.31 描画系処理速度一覧表6解決


anothat

リンク

2013/11/1(Fri) 23:45:57|NO.57941

気が向いたので作ってみました。
ご自由にご覧ください。

http://uploda.cc/img/img5273be5d3bdce.png



この記事に返信する


GENKI

リンク

2013/11/2(Sat) 00:35:52|NO.57943

速度重視したいときに使えそう。
でもこういうのは画像じゃなくテキストのほうがありがたいです。
速度順でソートしたり必要な物だけで比較したり…。

ということでこの↓wikiあたりに調査方法の詳細含めて乗っけてもらえるとより利用してもらえるんじゃないでしょうか。
http://hspdev-wiki.net/
[HSP開発wiki]



skyblue

リンク

2013/11/2(Sat) 13:05:52|NO.57953

環境依存なので正確かは定かではないですが参考としてならかなり使えそうですね。



(’’

リンク

2013/11/2(Sat) 19:46:24|NO.57957

おお、ありがたいです。いただきます。
あとできればcelputがほしいです。

あと若干似ているのがここにもありますね
http://www.tcn.zaq.ne.jp/akasy005/hsp2.htm



123

リンク

2013/11/3(Sun) 23:39:49|NO.57977

これはいいものだ。

でもたしかにcelputがほしいですね。
gcopyはほとんど使わないけどcelputの方がかなり重いとかなら、切り替えたいし。



暇人

リンク

2013/11/4(Mon) 02:09:38|NO.57978

celputのいま現在の処理はパラメータをgcopyに使用できるようにしてからgcopyの処理を呼び出し
回転や拡縮指定されたらgrotateの処理を呼び出す

パラメータを内部で持ってるcelputはスクリプト側でパラメータを指定する
gcopyより速い可能性がある(自分ところで試したら1万回で0.5ms前後しか差が無いので誤差程度だが・・・)

#module #uselib "kernel32.dll" #func QueryPerformanceFrequency "QueryPerformanceFrequency" sptr #func QueryPerformanceCounter "QueryPerformanceCounter" sptr //モジュール初期化 #deffunc QueryPerformance_init dim qpf,2 dim qpc,2 ddim qpt,1 QueryPerformanceFrequency varptr(qpf) if stat=0 {return -1} pf2=((4294967296.0+qpf)\4294967296.0)//符号付きintを正の数のdoubleにする pf2=(pf2+4294967296.0*qpf(1))//64ビットintをdoubleにする QueryPerformanceCounter varptr(qpc) if stat=0 {return -1} stqpc=((4294967296.0+qpc)\4294967296.0) stqpc=(stqpc+4294967296.0*qpc(1)) return 0 //---------QueryPerformance_init実行からの時間を単位を指定して取得-------- //GetQPtime(p1) // p1 = 何分の1秒かを指定(省略時1000)[ミリ秒なら1000] //整数部が指定単位になる #define global ctype GetQPtime(%1=1000) _GetQPtime(%1) #defcfunc _GetQPtime int q QueryPerformanceCounter varptr(qpc) qpt=((4294967296.0+qpc)\4294967296.0) return ((qpt+4294967296.0*qpc(1))-stqpc)/pf2*q #global buffer 1 QueryPerformance_init csx=16 csy=16 a=GetQPtime() gmode 0,csx,csy repeat 10000 pos 0,0 //celputが自動でポジション移動してバッファ外になってしまって計測上問題でるからpos 0,0するので同条件にする gcopy 0,0,0 loop b=GetQPtime() wait 10 celdiv 0,csx,csy c=GetQPtime() repeat 10000 pos 0,0 celput 0,0 loop d=GetQPtime() gsel 0 mes b-a mes d-c



123

リンク

2013/11/4(Mon) 05:43:00|NO.57979

おお暇人様、非常に参考になりました!

これからは安心してcelput使えます。

というかそもそもgcopyはなにがあろうと使う気も起こらない。
たまーに使うくらいで。
celputが作られてほんとによかったと思う。
楽でいいですよね。



ONION software Copyright 1997-2021(c) All rights reserved.