IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
пример 2д радара. исходный код, можете использовать у себя.
pavelman
сообщение 19.3.2017, 17:53
Сообщение #1


Активный участник
***

Группа: Пользователи
Сообщений: 201
Регистрация: 29.5.2009
Из: Russian Federation
Пользователь №: 65589



CODE

Rem Project: 2d radar
Rem Created: Sunday, March 19, 2017

Rem ***** Main Source File *****
cls 0
sync on
sync rate 30
SET DISPLAY MODE 1024, 768, 32
autocam off
make object cube 10,10
position object 10,rnd(500)-250,rnd(200)-100,rnd(500)-250
MAXIMIZE WINDOW
disable escapekey
make object cube 1,1
position object 1,0,0,0
position camera 0,0,0
do
CONTROL CAMERA USING ARROWKEYS 0,1, 1
gosub _psevdo_radar:
gosub _rotate_radar:
sync
if ESCAPEKEY()=1
delete object 1
delete object 10
end
ENDIF
LOOP

_psevdo_radar:
INK rgb(0,250,0),0
if object visible(1) then hide object 1
position object 1,0,0,0
SET OBJECT TO CAMERA ORIENTATION 1
move object 1,100
line 1024/2,768/2,OBJECT POSITION X(1)+1024/2,OBJECT POSITION z(1)+768/2
circle OBJECT POSITION X(10)-camera position x()+1024/2,OBJECT POSITION z(10)-camera position z()+768/2,5
return

_rotate_radar:
INK rgb(0,0,250),0
if object visible(1) then hide object 1
position object 1,camera position x(),0,camera position z()
SET OBJECT TO CAMERA ORIENTATION 1
move object 1,100
line 1024/2,768/2,1024/2-30,768/2-100
line 1024/2,768/2,1024/2+30,768/2-100
x#=abs(OBJECT POSITION X(10))-abs(camera position x())
y#=abs(OBJECT POSITION z(10))-abs(camera position z())
qqq#=abs(sqrt(x#^2+y#^2))
xalfa#=CAMERA ANGLE Y(0)
yalfa#=CAMERA ANGLE Y(0)
point camera OBJECT POSITION X(10),0,OBJECT POSITION z(10)
xalfa1#=CAMERA ANGLE Y(0)
yalfa1#=CAMERA ANGLE Y(0)
point camera OBJECT POSITION X(1),0,OBJECT POSITION z(1)
xx#=-qqq#*cos(xalfa#-xalfa1#-90)
yy#=qqq#*sin(yalfa#-yalfa1#-90)
set cursor 1,1
print CAMERA ANGLE Y(0)
qy#=OBJECT POSITION y(10)
set cursor 0,100
print qy#
circle xx#+1024/2,yy#+768/2-qy#,5
line xx#+1024/2,yy#+768/2,xx#+1024/2,yy#+768/2-qy#
return

Понятия не имею как мог сюда попасть не рабочий код.
Исправил. теперь можно пользоваться.
добавил более позднюю версию.
жду ваших коментариев.


--------------------
Если утром хорошо
встал, значит вечером
плохо выпил.
Перейти в начало страницы
 
+Цитировать сообщение

Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 23.11.2017, 8:33
 X 
Ссылки на работы форумчан:
1. Cайт по использованию 3D технологий
в образовании

2. 15 Defense. Underwater Battle

3. GlaZ в Steam Greenlight