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

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

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

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

Ответ
 
Опции темы
Старый 25.05.2011, 14:34   #16
Vadimich
Нуждающийся
 
Аватар для Vadimich
 
Регистрация: 26.08.2010
Сообщений: 54
Написано 3 полезных сообщений
(для 3 пользователей)
Ответ: Уменьшения числа

вобщем, вчера я запнулся именно на этом.. не получилось внедрить t# вот и сейчас выходит не то.. получается результат, который был бы таким и без времени 1 = 1 / (1+2*.5) = .5
(Offline)
 
Ответить с цитированием
Старый 25.05.2011, 14:51   #17
Черный крыс
 
Сообщений: n/a
Ответ: Уменьшения числа

[quote=Dream;189393]умножение на дробное число никогда не приведёт к резельтату 0 (если конечно одно из чисел уже не является нулем) самый простой -
[quote]

Можно легко замагнитить число к нулю.
 
Ответить с цитированием
Старый 25.05.2011, 14:53   #18
Vadimich
Нуждающийся
 
Аватар для Vadimich
 
Регистрация: 26.08.2010
Сообщений: 54
Написано 3 полезных сообщений
(для 3 пользователей)
Ответ: Уменьшения числа

а как это?
(Offline)
 
Ответить с цитированием
Старый 25.05.2011, 15:03   #19
Черный крыс
 
Сообщений: n/a
Ответ: Уменьшения числа

Сообщение от Vadimich Посмотреть сообщение
а как это?
Local a:Float = Rand(- 100.0, 100.0)
Local s:Float = -0.1

a = Min((Abs(a) * s) - 0.1, 0.0) * Sgn(a)

Если а меньше 0.1 то а приравнится к нулю.

Насчет функции Sgn(number) она какая то сверхсложная ?

Function Sgn:Int(num:Float)
    If a > 0.0 Then Return True
    If a < 0.0 Then Return -True
    Return False
End Function
Функция Min
Function Min:Float(v0:Float, v1:Float)
    If v0 < v1 Then Return v0
    Return v1
End Function
 
Ответить с цитированием
Старый 25.05.2011, 15:27   #20
Dream
быдло
 
Регистрация: 05.08.2007
Сообщений: 1,435
Написано 614 полезных сообщений
(для 1,489 пользователей)
Ответ: Уменьшения числа

Сообщение от Vadimich Посмотреть сообщение
вобщем, вчера я запнулся именно на этом.. не получилось внедрить t# вот и сейчас выходит не то.. получается результат, который был бы таким и без времени 1 = 1 / (1+2*.5) = .5
не глупи.если d#= 0тогда никакого уменьшения нету. если d#=1тоггда уменьшение в два раза. вроде же всё просто
(Offline)
 
Ответить с цитированием
Старый 25.05.2011, 15:48   #21
Vadimich
Нуждающийся
 
Аватар для Vadimich
 
Регистрация: 26.08.2010
Сообщений: 54
Написано 3 полезных сообщений
(для 3 пользователей)
Ответ: Уменьшения числа

d - это делитель.. было бы странно, если бы деление на 1 уменьшало в два раза?
(Offline)
 
Ответить с цитированием
Старый 25.05.2011, 16:49   #22
Dream
быдло
 
Регистрация: 05.08.2007
Сообщений: 1,435
Написано 614 полезных сообщений
(для 1,489 пользователей)
Ответ: Уменьшения числа

Сообщение от Vadimich Посмотреть сообщение
d - это делитель.. было бы странно, если бы деление на 1 уменьшало в два раза?
уфффф.. ну хорошо, если тебе проще напишу так i=i/(1+d/2*t)

И вообще что это за делитель? зачем он применяется?
(Offline)
 
Ответить с цитированием
Старый 25.05.2011, 17:27   #23
Vadimich
Нуждающийся
 
Аватар для Vadimich
 
Регистрация: 26.08.2010
Сообщений: 54
Написано 3 полезных сообщений
(для 3 пользователей)
Ответ: Уменьшения числа

если i - это импульс, то делитель (d) это то, что его гасит...
т.е. мне нужно иметь контроль для настройки скорости гашения полученного импульса и + к тому - чтобы был контроль времени этого процесса.. т.е. если время = .5, то гашение будет идти так же, но в два раза медленнее
(Offline)
 
Ответить с цитированием
Старый 25.05.2011, 18:47   #24
Dream
быдло
 
Регистрация: 05.08.2007
Сообщений: 1,435
Написано 614 полезных сообщений
(для 1,489 пользователей)
Ответ: Уменьшения числа

используй число от 0 до 1 и сразу вопросы отпадут
i=i*(d*t)
(Offline)
 
Ответить с цитированием
Старый 25.05.2011, 20:11   #25
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Уменьшения числа

извините, но первый пост - лютый БРЕД.
Автор может быть и подразумевает весьма конкретную задачу, но написал какую-то размазню.
Ответ: самый быстрый способ свети число к нулю - обнулить.
x=rnd(0,10)
x=0
Поражает наличие в треде телепатов (они вернулись из отпуска!), которые сумели восполнить пробелы, или, что более вероятно, решают свои задачи.

*импе телепатирует*
АВТОР, тебе надо читать вот это: http://ru.wikipedia.org/wiki/%D2%E5%...EB%E5%ED%E8%FF (в частности - http://ru.wikipedia.org/wiki/Следяща...ема_управления )
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Эти 6 пользователя(ей) сказали Спасибо impersonalis за это полезное сообщение:
baton4ik (26.05.2011), Dream (25.05.2011), h1dd3n (26.05.2011), HolyDel (25.05.2011), LLI.T.A.L.K.E.R. (25.05.2011), tormoz (26.05.2011)
Старый 25.05.2011, 20:21   #26
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Уменьшения числа

АВТОР, тебе надо читать вот это: http://ru.wikipedia.org/wiki/%D2%E5%...EB%E5%ED%E8%FF (в частности - http://ru.wikipedia.org/wiki/Следяща...ема_управления )
нафига ему это читать?
(Offline)
 
Ответить с цитированием
Старый 25.05.2011, 21:05   #27
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Уменьшения числа

Это "типа" поможет ему смоделировать систему гашения ошибки на выходе. По сути, он моделирует некую следящую систему, реагирующую на случайный входной сигнал.
Конкретные реализации давать не имеет смысла - автор не может объяснить что хочет. Каков вопрос (по уровню абстракции) таков ответ.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
tormoz (26.05.2011)
Старый 25.05.2011, 23:06   #28
LLI.T.A.L.K.E.R.
Мастер
 
Аватар для LLI.T.A.L.K.E.R.
 
Регистрация: 24.06.2009
Адрес: Набережные Челны
Сообщений: 930
Написано 292 полезных сообщений
(для 504 пользователей)
Ответ: Уменьшения числа

Сообщение от Vadimich Посмотреть сообщение
к примеру я бы сделал что-то вроде этого:

a# = Rnd (-10,10); задаем случайное значение
s# = .1; шаг уменьшения
d#=0.5; скорость уменьшения (по времени)(если 1 то обычно, 2 - ускорено, 0.5 - медленно)

a#=Int(Sgn(a#))*(Abs(a#)-(s#*d#)) 
хотя наличие двух меньшинств не практично?
Может просто иметь скорость...
(Offline)
 
Ответить с цитированием
Старый 26.05.2011, 08:39   #29
Vadimich
Нуждающийся
 
Аватар для Vadimich
 
Регистрация: 26.08.2010
Сообщений: 54
Написано 3 полезных сообщений
(для 3 пользователей)
Ответ: Уменьшения числа

2 impersonalis: я бы не стал разводить такой базар, если мне надо было бы просто прировнять её к нулю. Наверное я тебя своей тупостью раздражаю мне не надо гасить ошибку на выходе... это просто частица, которая получила определенную скорость по вектору, которую надо быстро(в зависимости от переменной) погасить. и все это привязано ко времени... чтобы если оно вдруг замедлилось, скорость уменьшалась в соответствующем темпе... я решил эту проблему ещё вчера своим ламерским способом, представленным в начале, но надеюсь научиться чему-то более... изящному, что-ли, общаясь тут с более сообразительными ребятами
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
impersonalis (26.05.2011)
Старый 26.05.2011, 21:03   #30
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Уменьшения числа

мне не надо гасить ошибку на выходе... это просто частица, которая получила определенную скорость по вектору, которую надо быстро(в зависимости от переменной) погасить.
Я лишь сформулировал модель в терминах указанной выше дисциплины. Ваш код (функция, процедура, тело цикла, etc) передставляет собой некую следящую систему: он отслеживает значение переменной Х. По дефолту она равна нулю. Когда появляется "импульс", переменная становится отлична от нуля. Появляется "ошибка" слежения. Система должна некоторым образом компенсировать её.
Например: сервомеханизм реагирует на давление в котле. Как только оно начинает превышать установленный порог (например, 0 Па) - система компенсирует образовавшуюся разность (актуальное и требуемое значение), например, путём стравливания излишков газа. Вот вы и спрашиваете - каким законом должна быть описана эта реакция: открыть заслонку сразу на максимум, открывать на величину, пропорциональную давлению, проч?
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
HolyDel (28.05.2011)
Ответ


Опции темы

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

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


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


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