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

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

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

Ответ
 
Опции темы
Старый 11.07.2009, 19:59   #1
ELIAS
Знающий
 
Аватар для ELIAS
 
Регистрация: 31.08.2008
Адрес: Arrakis
Сообщений: 234
Написано 6 полезных сообщений
(для 6 пользователей)
Пульсирующая яркость активных объектов

Наверное все видели, что в играх такие объекты как аптечки, оружие, различные бонусы часто подсвечиваются. Причем меня интересует именно тот случай когда эта подсветка пульсирует. То есть где то за 2-3 сек. объект плавно переходит от обыкновенного состояния к подсвеченному и обратно. Но как плавно менять освещённость/яркость объекта. Я так понял что в блитце такой команды нет, но может можно что-то придумать хитрохакрученное, или же, возможно, такое можно сделать с помощью сторонних либ?
(Offline)
 
Ответить с цитированием
Старый 11.07.2009, 20:07   #2
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: Пульсирующая яркость активных объектов

createlight()
lightrange()
entityfx()
entitycolor()
entityshininess()
спрайты
и т.д.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ABTOMAT (11.07.2009)
Старый 11.07.2009, 20:15   #3
MiXaeL
Бывалый
 
Аватар для MiXaeL
 
Регистрация: 22.08.2006
Сообщений: 700
Написано 146 полезных сообщений
(для 267 пользователей)
Ответ: Пульсирующая яркость активных объектов

Достаточно EntityColor и по синусу от Millisecs() менять
(Offline)
 
Ответить с цитированием
Старый 11.07.2009, 20:20   #4
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Пульсирующая яркость активных объектов

Ещё Sin()
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 11.07.2009, 20:58   #5
ELIAS
Знающий
 
Аватар для ELIAS
 
Регистрация: 31.08.2008
Адрес: Arrakis
Сообщений: 234
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Пульсирующая яркость активных объектов

createlight()
lightrange()
entityfx()
entitycolor()
entityshininess()
спрайты
и т.д.
createlight(),lightrange(): у меня в игре слишклм много тких объектов(более 100), блитз даже столько источников света не позволит сделать, да и в любом случае источник света - не экономно..

entityfx(): ты про параметр 1/полная яркость говоришь? Но я хотел плавно менять яркость(да и амбиент - это не совсем то что нужно, просто пропадают все тени - не годится, объект должен оставаться объемным).

entityshininess(): ???
Спрайты: ???

Entitycolor - Вот это вариант!!! но есть проблемы
1) про какой ещё синус вы тут говорите??? пишу EntityColor Cube, Sin(MilliSecs), Sin(MilliSecs), Sin(MilliSecs) - черный навсегда.
2) Entitycolor неприменим к объектам на которые наложен brush!!!
(Offline)
 
Ответить с цитированием
Старый 11.07.2009, 21:08   #6
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Пульсирующая яркость активных объектов

Sin(MilliSecs)
В блитце надо ставить скобки у любой команды, которая возвращает какое-либо значение, иначе будет всегда 0:

Sin(MilliSecs())
Кроме того, да будет вам известно, синус изменяется в пределах от -1 до 1, поэтому ты никакого результата не увидишь, надо чтобы значение менялось от 0 до 255. Для этого умножаем значение синуса на 128 и прибавляем 127, чтобы избавиться от отрицательного знака. Или сначала прибавляем 1 и умножаем на 128 и прибавляем 1 (т.к. 0-255, а не 0-256):

(Sin(MilliSecs())*128)+127
Кроме того это значение будет меняться слишком быстро, надо уменьшить скорость изменения входного параметра на синус (а именно - Миллисекас), например, в 10 раз:

(Sin(MilliSecs()*0.1)*128)+127
Всё, вот теперь работает:
Graphics3D 800,600,32,2
SetBuffer BackBuffer()

cam = CreateCamera()
PositionEntity cam,0,0,-5
cube = CreateCube()
CreateLight()

Repeat
	TurnEntity cube,1,1,1	
	EntityColor Cube, (Sin(MilliSecs()*0.1)*128)+127,0,0

	RenderWorld
	Flip
Until KeyHit(1)
End
Учи матчасть.
И вообще, советую почитать:
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена


Последний раз редактировалось ABTOMAT, 11.07.2009 в 21:13.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ELIAS (11.07.2009)
Старый 11.07.2009, 21:18   #7
ELIAS
Знающий
 
Аватар для ELIAS
 
Регистрация: 31.08.2008
Адрес: Arrakis
Сообщений: 234
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Пульсирующая яркость активных объектов

И вообще, советую почитать:
Обязательно почитаем уже в этом году.

А как же быть с брашами? браши я в максе создаю! и экспортирую пайплайном
Не бонусы не сложные - есть вариант просто быстро переделать в максе блитз-браши в обыкновенные максовские стандартные материалы, но просто интересно мне что можно придумать - возможно пригодится потом))

Последний раз редактировалось ELIAS, 11.07.2009 в 21:25.
(Offline)
 
Ответить с цитированием
Старый 11.07.2009, 21:36   #8
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: Пульсирующая яркость активных объектов

EntityBlend aptechko,3
__________________
(Offline)
 
Ответить с цитированием
Старый 11.07.2009, 21:54   #9
ELIAS
Знающий
 
Аватар для ELIAS
 
Регистрация: 31.08.2008
Адрес: Arrakis
Сообщений: 234
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Пульсирующая яркость активных объектов

EntityBlend aptechko,3
Зачем это?
(Offline)
 
Ответить с цитированием
Старый 11.07.2009, 23:51   #10
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: Пульсирующая яркость активных объектов

Сообщение от ELIAS Посмотреть сообщение
Зачем это?
Пульсирующая яркость активных объектов
__________________
(Offline)
 
Ответить с цитированием
Старый 11.07.2009, 23:53   #11
H@NON
Дэвелопер
 
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений
(для 774 пользователей)
Ответ: Пульсирующая яркость активных объектов

это флаг смешивания брашей. Это дает возможность воздействия браша цвета на браш с текстурой.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ELIAS (12.07.2009)
Старый 12.07.2009, 13:16   #12
ELIAS
Знающий
 
Аватар для ELIAS
 
Регистрация: 31.08.2008
Адрес: Arrakis
Сообщений: 234
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Пульсирующая яркость активных объектов

(Sin(MilliSecs()*0.1)*128)+127
А почему не (Cos(MilliSecs()*0.1)*128)+127
???
(Offline)
 
Ответить с цитированием
Старый 12.07.2009, 13:21   #13
jimon
 
Сообщений: n/a
Ответ: Пульсирующая яркость активных объектов

ELIAS
а какая разница ? почитай учебник по алгебре за 9 класс, там тебе обьяснят что cos(A) = sin(Pi/2-A) где Pi/2 радиан это 90 градусов
из этого следует что sin и cos ведут себя в общем себя одинаково

ps. что-то зачастили отсылы в учебники 9-11 класса, меня вот в универ отсылали, говорили там научат, неужели школьная система образования скотилась в полную какашку ?
или все школьники вместо учёбы теперь хотят курить, пить и заниматся сексом ?
 
Ответить с цитированием
Старый 12.07.2009, 13:40   #14
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Пульсирующая яркость активных объектов

Сообщение от ELIAS Посмотреть сообщение
А почему не (Cos(MilliSecs()*0.1)*128 )+127
???
Один и тот же эффект в принципе.
Косинус (альфа) - это синус (90°-альфа)
Читай книжку, которая на картинке.

З.Ы. Jimon, да, скатилась дальше некуда.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 12.07.2009, 17:37   #15
falcon
Разработчик
 
Аватар для falcon
 
Регистрация: 12.07.2008
Сообщений: 523
Написано 196 полезных сообщений
(для 470 пользователей)
Ответ: Пульсирующая яркость активных объектов

Да не школьники скатились... а образование ценность стало терять в глазах школьников... ща если приглядеться детям ваще че угодно разрешено...(и алкоголь заприщают покупать только по телевизору)
ну вот собственно... сложилось у них мол "нахера мне это надо" а результат - отсутствие не только знаний но и стремления к их получению..
я до 11ого класса ваще ра3.14дяем был... теперь и пить и курить бросил.. и очень жалею об упущеном времени... т.к. учебники за 9-10 класс пришлось перечиывать в 11ом
но всем моим одноклассникам - поуху
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
NitE (12.07.2009)
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выделение объектов. Delta_Q 3D-программирование 3 01.10.2007 03:55
Множество объектов Taugeshtu 3D-программирование 10 31.07.2007 10:27
Вхождения объектов Inrio 3D-программирование 10 01.07.2007 08:34
Перемещени объектов WaReZ_MEN 3D-программирование 9 08.05.2007 02:51
Шлейф для объектов SubZer0 Полезные функции 10 10.10.2005 20:23


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


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