Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 2D-программирование

2D-программирование Вопросы, касающиеся двумерного программирования

Ответ
 
Опции темы
Старый 30.09.2009, 20:04   #1
pepel
Мастер
 
Аватар для pepel
 
Регистрация: 23.09.2009
Адрес: ленобласть
Сообщений: 1,189
Написано 447 полезных сообщений
(для 2,526 пользователей)
Смущение Плавное вращение..м?

как с помощью фУНКЦИи сделать плавное вращение..
например указываешь новый градус то старый плавно перетекает в новый.

хотя уже есть одна мысль как это реализовать, но довольно муторный способ, ктомуже может ктото уже занимался подобным..


вот примерно такое:
(только тут плавно перемещется шарик, а градус тупо направлен на него)

Graphics 640,480,16,2
SetBuffer BackBuffer()
Colore=160
clsColore=240
ClsColor clsColore,clsColore,clsColore
Color Colore,Colore,Colore
Global dix#[2],sx#[2],snx#[2]
Local x#,y#,dx#,dy#,rad#,dist#,mx#,my#,nx#,ny#
Repeat

If MouseDown(1) mx=MouseX():my=MouseY()


rad#=ATan2(y-240,x-320)
Line 320,240,320+Cos(rad)*100,240+Sin(rad)*100

x=Newdigit(mx,1)
y=Newdigit(my,2)

Oval x-5,y-5,10,10

Flip:Cls:If KeyDown(1) End
Forever
Function Newdigit(ssx#=0,nu=1)


	s#=dix[nu]-ssx
	dix[nu]=dix[nu]-s/10
	
	Return dix[nu]
End Function

Function col(col)
	Color col,col,Col
End Function
(Offline)
 
Ответить с цитированием
Старый 01.10.2009, 23:50   #2
CRASHER
Разработчик
 
Регистрация: 08.03.2007
Сообщений: 530
Написано 31 полезных сообщений
(для 36 пользователей)
Ответ: Плавное вращение..м?

Я поьлзуюсь этими хитрыми и в то же время простыми функциями

Function  track_YR_Smooth(e1,e2,smothness#=100.0,smeshen#=0)
	PositionEntity gPivot1,EntityX(e1),EntityY(e1)+smeshen,EntityZ(e1)
	PointEntity gPivot1,e2	
	RotateEntity e1, 0,curveAngle#(EntityYaw(gPivot1),EntityYaw(e1),smothness#),0	
End Function

Function curveangle#( newangle#,oldangle#,increments#)
	If increments>1		
		If (oldangle+360)-newangle<newangle-oldangle 
			oldangle=360+oldangle
		End If
		If (newangle+360)-oldangle<oldangle-newangle 
			newangle=360+newangle
		End If
		oldangle=oldangle-(oldangle-newangle)/increments
	End If
	If increments<=1 
		Return newangle
	End If
	Return oldangle

End Function
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо CRASHER за это полезное сообщение:
gforcer18 (07.05.2010), Harter (12.10.2009), KOPCAP (11.10.2010), pepel (02.10.2009)
Старый 02.10.2009, 00:04   #3
pepel
Мастер
 
Аватар для pepel
 
Регистрация: 23.09.2009
Адрес: ленобласть
Сообщений: 1,189
Написано 447 полезных сообщений
(для 2,526 пользователей)
Ответ: Плавное вращение..м?

Сообщение от CRASHER Посмотреть сообщение
Я поьлзуюсь этими хитрыми и в то же время простыми функциями

Function  track_YR_Smooth(e1,e2,smothness#=100.0,smeshen#=0)
	PositionEntity gPivot1,EntityX(e1),EntityY(e1)+smeshen,EntityZ(e1)
	PointEntity gPivot1,e2	
	RotateEntity e1, 0,curveAngle#(EntityYaw(gPivot1),EntityYaw(e1),smothness#),0	
End Function

Function curveangle#( newangle#,oldangle#,increments#)
	If increments>1		
		If (oldangle+360)-newangle<newangle-oldangle 
			oldangle=360+oldangle
		End If
		If (newangle+360)-oldangle<oldangle-newangle 
			newangle=360+newangle
		End If
		oldangle=oldangle-(oldangle-newangle)/increments
	End If
	If increments<=1 
		Return newangle
	End If
	Return oldangle

End Function
мегаспасибо! то что нужно))
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
gforcer18 (07.05.2010)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Lib_turn: Вращение картинки на произвольный угол odd Библиотеки 6 16.05.2012 22:53
Плавное перемещение камеры evel 3D-программирование 12 06.10.2007 21:34
Плавное перемещение игрока Fant 3D-программирование 4 18.04.2006 22:48


Часовой пояс GMT +4, время: 12:28.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com