|
3D-программирование Вопросы, касающиеся программирования 3D мира |
26.03.2011, 22:11
|
#1
|
ПроЭктировщик
Регистрация: 12.02.2011
Сообщений: 131
Написано 23 полезных сообщений (для 52 пользователей)
|
Спрайты с эффектами
Вот думаю еще один трэшачок сделать. Поскольку с модельками жопа, то решил от них вообще отказаться. Взамен будут билборды.
Хочется на билборд уметь накладывать текстуру с альфа-каналом из отдельного файла + надо, чтобы он повернут к пользователю всегда был.
Такое возможно сделать? В какую сторону копать?
|
(Offline)
|
|
26.03.2011, 22:38
|
#2
|
Разработчик
Регистрация: 02.06.2009
Адрес: Город Герой Ленинград
Сообщений: 392
Написано 33 полезных сообщений (для 74 пользователей)
|
Ответ: Спрайты с эффектами
Ага... Значить такс. Используй формат текстур png. У них альфа.
Blitz:
sprite=CreateSprite()
texture=LoadTexture("texture.png")
EntityTexture sprite, texture
Но лучше сразу загружать спрайт.
__________________
Самый первый и самый великий программист - это Бог.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
26.03.2011, 23:50
|
#3
|
ПроЭктировщик
Регистрация: 12.02.2011
Сообщений: 131
Написано 23 полезных сообщений (для 52 пользователей)
|
Ответ: Спрайты с эффектами
Ganociy, наверно я не точно выразился. Считаем, что на спрайте уже есть текстура, хочется поверх еще повесить.
Делаю так
TextureFilter "",1+8
TextureFilter "_a",2 ; У текстур, заканчивающихся на _a используем альфа-канал
sprite=CreateSprite()
texture=LoadTexture("resources/textures/test_a.png")
EntityTexture sprite, texture
Если загрузить еще одну текстуру и повесить через EntityTexture, то текстура не добавится к уже имеющейся, а заменит предыдущую.
Хочу второй текстурой шумы добавлять.
|
(Offline)
|
|
27.03.2011, 01:51
|
#4
|
Дэвелопер
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений (для 1,540 пользователей)
|
Ответ: Спрайты с эффектами
Спрайты сразу в топку.
Создаешь квад этой функцией
Function AuxCreateQuad( parent = 0 ) Local quad = CreateMesh( parent ) Local primarySurf = CreateSurface( quad ) Local v0 = AddVertex(primarySurf,-0.5,0.5,0,0,0) Local v1 = AddVertex(primarySurf,-0.5,-0.5,0,0,1) Local v2 = AddVertex(primarySurf,0.5,0.5,0,1,0) Local v3 = AddVertex(primarySurf,0.5,-0.5,0,1,1) AddTriangle primarySurf, v0,v2,v1 AddTriangle primarySurf, v1,v2,v3 UpdateNormals quad Return quad End Function
Поворачиваешь его к камере через PointEntity или AlignToVector. Далее текстуры как обычно накладываешь. TextureBlend не забудь правильно выставить.
__________________
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
27.03.2011, 21:37
|
#5
|
ПроЭктировщик
Регистрация: 12.02.2011
Сообщений: 131
Написано 23 полезных сообщений (для 52 пользователей)
|
Ответ: Спрайты с эффектами
mr.DIMAS, ну раз спрайты отвалились, то буду так делать. Спасибо
Мультитекстурирование тут недавно проскакивало уже, так что разберусь.
|
(Offline)
|
|
29.03.2011, 12:23
|
#6
|
Элита
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений (для 1,012 пользователей)
|
Ответ: Спрайты с эффектами
Мультитекстурирование тут недавно проскакивало уже, так что разберусь.
|
Мультик из текстур можно сделать так:
EntityTexture entity,tex,[в какой слой рисовать от 0 до 7(умолч 0)]
TextureBlent textura,Blend%
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
29.03.2011, 13:02
|
#7
|
ПроЭктировщик
Регистрация: 12.02.2011
Сообщений: 131
Написано 23 полезных сообщений (для 52 пользователей)
|
Ответ: Спрайты с эффектами
Костян, у меня две текстуры с прозрачностью. Как делаю, код ниже. Первая текстура - се ок, вторая накладывается, но вместо прозрачности получаю белую заливку
Graphics3D 1024, 768, 32, 0
SetBuffer BackBuffer()
TextureFilter "",1+8
TextureFilter "_a",2
sprite= CreateSprite ()
texture=LoadTexture("resources/textures/test_a.png")
EntityTexture sprite, texture,0
texture2=LoadTexture("resources/textures/test2_a.png")
TextureBlend texture2,1 ; Пробовал разное от 0 до 5
EntityTexture sprite, texture2,0,1
camera=CreateCamera()
CameraViewport camera,0,0, 800, 600
light=CreateLight()
PositionEntity camera, 0, 0, -5
While Not KeyHit(1)
UpdateWorld
RenderWorld
Flip
Wend
End
|
(Offline)
|
|
29.03.2011, 13:18
|
#8
|
Дэвелопер
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений (для 1,540 пользователей)
|
Ответ: Спрайты с эффектами
а бленд на первую тексу поставил? в справке написано: вторая смешивается с первой. так что поставь на первую тексу смешивание 2( multiply ).
зы. результат не проверял
__________________
|
(Offline)
|
|
29.03.2011, 13:24
|
#9
|
Элита
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений (для 1,012 пользователей)
|
Ответ: Спрайты с эффектами
а бленд на первую тексу поставил? в справке написано: вторая смешивается с первой. так что поставь на первую тексу смешивание 2( multiply ).
зы. результат не проверял
|
Не канает....
Во:
EntityBlend sprite,3;хз причем тут смешивание с миром,но работает
зы.
TextureBlend теперь нахрен не нужно....
|
(Offline)
|
|
29.03.2011, 13:24
|
#10
|
Дэвелопер
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений (для 1,540 пользователей)
|
Ответ: Спрайты с эффектами
По-русски пожалуйста.
__________________
|
(Offline)
|
|
29.03.2011, 14:11
|
#11
|
ПроЭктировщик
Регистрация: 12.02.2011
Сообщений: 131
Написано 23 полезных сообщений (для 52 пользователей)
|
Ответ: Спрайты с эффектами
mr.DIMAS, не пашет.
Костян, неправильно смешивается.
|
(Offline)
|
|
29.03.2011, 16:39
|
#12
|
Элита
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений (для 1,012 пользователей)
|
Ответ: Спрайты с эффектами
|
(Offline)
|
|
30.03.2011, 19:13
|
#13
|
ПроЭктировщик
Регистрация: 12.02.2011
Сообщений: 131
Написано 23 полезных сообщений (для 52 пользователей)
|
Ответ: Спрайты с эффектами
Ну это сам покопаю.
Вопрос в догонку: никто не знает как называется демка для Blitz3d, где то ли колоны слева, то ли окна и заливающий сцену желтый свет из-за них (вправо). Демка - статичная картинка насколько помню. Сейчас порыскал по примерчикам у себя, что-то не нашел.
|
(Offline)
|
|
31.03.2011, 11:52
|
#14
|
Элита
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений (для 1,012 пользователей)
|
Ответ: Спрайты с эффектами
Вопрос в догонку: никто не знает как называется демка для Blitz3d, где то ли колоны слева, то ли окна и заливающий сцену желтый свет из-за них (вправо). Демка - статичная картинка насколько помню. Сейчас порыскал по примерчикам у себя, что-то не нашел.
|
чет я такой в стандартном наборе на помню..
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 06:07.
|