HSP3.6β5HGIMG4 도미노 쓰러뜨리기
덕분에 장방체 강체를 만들 수 있어 도미노 골패 골패 골패 골패 골패 골패 골패 골패 골패 골패 골패 골패 골패 골패를 실현할 수 있었다.
샘플 코드는 다음과 같습니다.
#include "hgimg4.as"
#define GRAVY (-9.8 * 3.0)
gpreset
setcls CLSMODE_SOLID, 0x000000
setpos GPOBJ_CAMERA, 30,40,110
gplookat GPOBJ_CAMERA, 0,2,0
gosub *make
repeat
redraw 0
gpdraw
redraw 1
await 1000/60
loop
*make
num = 10
dist = 6
offset_y = 10.0
offset_x = -2.2
// 床1段目
fric = 1.0
pong = 0.01
col = 0x606060
size = double(dist * num) * 0.5, 1.0, 4.0
ps = size.0, 0.0 + offset_y, 0.0
id = _box(size, ps, col, 0, fric, pong)
// 床2段目
ps = - double(dist * num) * 0.5 + offset_x, 0.0, 0.0
id = _box(size, ps, col, 0, fric, pong)
mass = 10.0
size = 1.0, 4.0, 2.0
fric = 0.2
pong = 0.5
// キックピース
col = 0xff0000
ps = double(dist * (num - 1)) - 2.0, 2.0 + offset_y, 0.0
gpbox id, 2.0, col
setpos id, ps.0, ps.1, ps.2
setscale id, size.0, size.1, size.2
setang id, 0, 0, M_PI * 0.1
gppbind id, mass, fric
gppset id, GPPSET_FRICTION, fric, pong
flup = 2
mass = 2.0
repeat num-2, 1 // 1グループ目
r = (rnd(5 - flup) + flup) * 51
g = (rnd(5 - flup) + flup) * 51
b = (rnd(5 - flup) + flup) * 51
col = (r << 16) | (g << 8) | b
ps = double(dist * cnt), 2.0 + offset_y, 0.0
id = _box(size, ps, col, mass, fric, pong)
loop
repeat num-1, 1 // 2グループ目
r = (rnd(5 - flup) + flup) * 51
g = (rnd(5 - flup) + flup) * 51
b = (rnd(5 - flup) + flup) * 51
col = (r << 16) | (g << 8) | b
ps = offset_x - double(dist * cnt), 4.0, 0.0
id = _box(size, ps, col, mass, fric, pong)
loop
return
// 直方体剛体を作成する
#defcfunc _box array _size, array _pos, int _col, double _mass, double _fric, double _pong, local _id
gpbox _id, 2, _col
setpos _id, _pos.0, _pos.1, _pos.2
setscale _id, _size.0, _size.1, _size.2
gppbind _id, _mass, _fric
gppset _id, GPPSET_FRICTION, _fric, _pong
gppset _id, GPPSET_DAMPING, 0.0, 0.0
gppset _id, GPPSET_GRAVITY, 0.0, GRAVY, 0.0
return _id
실행 결과 1오른쪽 빨간색 도미노에서 쓰러지다
실행 결과2
퍼터
기본 중력값이면 조금 더딘 움직임이 느껴져 수치를 확대했다.
Reference
이 문제에 관하여(HSP3.6β5HGIMG4 도미노 쓰러뜨리기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/hta393939/items/81f71a16598b3d965764텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)