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

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

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

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

Ответ
 
Опции темы
Старый 23.04.2006, 23:06   #1
HorNeS
Оператор ЭВМ
 
Регистрация: 14.01.2006
Сообщений: 25
Написано 0 полезных сообщений
(для 0 пользователей)
Печаль

У меня есть спрайт света,когда я его ставлю в угол,то он у меня обрезается полигонами стен. Делал с помощью EntityOrder,но спрайт становится видно отовсюду...хоть за пятьдесят стен. Короче, мне нужно стобы спрайт не был обрезанным возле стен.
Помогите плиз мне решить эту проблему.
(Offline)
 
Ответить с цитированием
Старый 23.04.2006, 23:42   #2
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Никак. Твоя вводная обрезает все адекватные варианты решения =/
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 24.04.2006, 00:15   #3
HorNeS
Оператор ЭВМ
 
Регистрация: 14.01.2006
Сообщений: 25
Написано 0 полезных сообщений
(для 0 пользователей)
Даже с помощью Pick не получится?
(Offline)
 
Ответить с цитированием
Старый 24.04.2006, 02:06   #4
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
If EntityVisible(sprite)
  EntityOrder sprite,-1
Else
  EntityOrder sprite,0
EndIf
Типа так
__________________
(Offline)
 
Ответить с цитированием
Старый 24.04.2006, 02:15   #5
SubZer0
Администратор
 
Аватар для SubZer0
 
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений
(для 996 пользователей)
а с EntityInView так-же не получится?
__________________
Как минимум я помог многим (с)
(Offline)
 
Ответить с цитированием
Старый 24.04.2006, 05:34   #6
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Низя.
EntityInView не показывает, загорожен ли объект уровнем.
__________________
(Offline)
 
Ответить с цитированием
Старый 24.04.2006, 14:09   #7
HorNeS
Оператор ЭВМ
 
Регистрация: 14.01.2006
Сообщений: 25
Написано 0 полезных сообщений
(для 0 пользователей)
Спасибо, Tormoz !
Все прекрасно работает !
(Offline)
 
Ответить с цитированием
Старый 24.04.2006, 15:29   #8
HorNeS
Оператор ЭВМ
 
Регистрация: 14.01.2006
Сообщений: 25
Написано 0 полезных сообщений
(для 0 пользователей)
Только вот когда загораживаю спрайт другими объектами (рукой,как показано на скриншоте), его становится видно. Это нельзя исправить? Даже ничего в голову не приходит.
(Offline)
 
Ответить с цитированием
Старый 24.04.2006, 16:13   #9
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Поставь на руки пицкмоде.
Тогда визибл не будет "видеть" спрайт сквозь нее и отключит ордер
поиграй с радиусом спрайта

EntityRadius p_spr,rad#; радиус центрального огня
EntityPickMode ruka_c_pistolem,2


.....
If EntityVisible(cam,p_spr)
 *EntityOrder p_spr,-1
Else
 *EntityOrder p_spr,0
EndIf
__________________
(Offline)
 
Ответить с цитированием
Старый 24.04.2006, 17:54   #10
HorNeS
Оператор ЭВМ
 
Регистрация: 14.01.2006
Сообщений: 25
Написано 0 полезных сообщений
(для 0 пользователей)
Все равно не скрывается, я думаю дело или в радиусе спрайта,или в загрузке модели пистолета с флагом Anim(но это врядли) .

Вот код создания спрайта:

Dim lih(2)
For li=1 To 2
lih(li)=LoadSprite ("sprites\light02.png",1)
ScaleSprite lih(li),11,11
EntityRadius lih(li),1;радиус выбирал рандомно
Next
(Offline)
 
Ответить с цитированием
Старый 24.04.2006, 19:39   #11
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Во первых:
перебери все чилды аним_меша и назнач пицкмоде, или по имени руки и пистолета найди финдчилдом.
Во-вторых никакого рандома.
создай сферу в месте спрайта и определись с размером радиуса. Сфера для масштаба. по умолчанию у нее радиус 1
__________________
(Offline)
 
Ответить с цитированием
Старый 24.04.2006, 20:46   #12
HorNeS
Оператор ЭВМ
 
Регистрация: 14.01.2006
Сообщений: 25
Написано 0 полезных сообщений
(для 0 пользователей)
А перебирать чилды командой GetChild ? Если да, то что надо поставить под словом(в хелпе) index?
GetChild (entity,index)
p.s. Прошу прощения за такие глупые вопросы .
(Offline)
 
Ответить с цитированием
Старый 24.04.2006, 21:03   #13
SubZer0
Администратор
 
Аватар для SubZer0
 
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений
(для 996 пользователей)
цикл по I от 1 до CountChildren ( entity ) и в нем GetChild (entity,I)

index это порядковый номер объекта (ребенка).
__________________
Как минимум я помог многим (с)
(Offline)
 
Ответить с цитированием
Старый 24.04.2006, 21:29   #14
HorNeS
Оператор ЭВМ
 
Регистрация: 14.01.2006
Сообщений: 25
Написано 0 полезных сообщений
(для 0 пользователей)
Тоесть:
For i=1 To CountChildren(entity)
ch=GetChild(entity,i)
Next
Я так понял? Или что-то упустил?
(Offline)
 
Ответить с цитированием
Старый 24.04.2006, 23:24   #15
SubZer0
Администратор
 
Аватар для SubZer0
 
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений
(для 996 пользователей)
Originally posted by HorNeS@24.4.2006, 18:29
Я так понял? Или что-то упустил?
угу, а что? не работает?
__________________
Как минимум я помог многим (с)
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Блеклые спрайты Abiron 3D-программирование 18 20.06.2009 10:21
спрайты для bmax G.A.D Болтовня 11 30.03.2009 21:27
спрайты NoNsense 3D-программирование 31 21.08.2008 11:28
Спрайты и тайлы mrsandy Основной форум 1 29.01.2008 15:54
Почему тормозят спрайты? MiXaeL 3D-программирование 12 09.01.2007 10:17


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


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