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

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

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

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

Ответ
 
Опции темы
Старый 29.09.2007, 15:54   #1
magpro
Разработчик
 
Аватар для magpro
 
Регистрация: 23.08.2006
Сообщений: 586
Написано 6 полезных сообщений
(для 7 пользователей)
Звёзды. звёзды (небесные в смысле)

В общем такое дело.

Хочу сделать космос с большим кол-вом звёзд (с очень большим колличеством).

Создавать в цикле сферы это ухудшит на много скорость игры.

И вот думаю что делать. Мож кто подскажет?

Я сейчас думаю о материнских и т.п. объектов. Мож это поможет?

Заранее спасибо.
__________________
Никто не запомнит тебя за твои мысли...
(Offline)
 
Ответить с цитированием
Старый 29.09.2007, 16:17   #2
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Re: Звёзды. звёзды (небесные в смысле)

CreateSprite ( [parent] )
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 29.09.2007, 16:51   #3
magpro
Разработчик
 
Аватар для magpro
 
Регистрация: 23.08.2006
Сообщений: 586
Написано 6 полезных сообщений
(для 7 пользователей)
Re: Звёзды. звёзды (небесные в смысле)

Сообщение от magpro
Я сейчас думаю о материнских и т.п. объектов. Мож это поможет?
это и иммел в веду.

Сообщение от impersonalis
CreateSprite ( [parent] )
спс.
__________________
Никто не запомнит тебя за твои мысли...
(Offline)
 
Ответить с цитированием
Старый 29.09.2007, 16:56   #4
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Re: Звёзды. звёзды (небесные в смысле)

может просто извернуть десяток сфер разного радиуса с нанесеннвми на них текстурами звездного неба?

если уж надо спрайтами, то лучше все ето дело запихнуть в один/два меша, а то тормозить будет.
(Offline)
 
Ответить с цитированием
Старый 29.09.2007, 16:59   #5
magpro
Разработчик
 
Аватар для magpro
 
Регистрация: 23.08.2006
Сообщений: 586
Написано 6 полезных сообщений
(для 7 пользователей)
Всётаки тормозит=(

Сообщение от HolyDel
может просто извернуть десяток сфер разного радиуса с нанесеннвми на них текстурами звездного неба?

если уж надо спрайтами, то лучше все ето дело запихнуть в один/два меша, а то тормозить будет.
спрайтами говоришь?

Надо посмотреть
__________________
Никто не запомнит тебя за твои мысли...
(Offline)
 
Ответить с цитированием
Старый 29.09.2007, 17:37   #6
ЛысыЙ_Чук-Иванчук
Дэвелопер
 
Регистрация: 19.03.2006
Сообщений: 1,241
Написано 10 полезных сообщений
(для 17 пользователей)
Re: Звёзды. звёзды (небесные в смысле)

Юзай партиклы
(Offline)
 
Ответить с цитированием
Старый 29.09.2007, 18:26   #7
magpro
Разработчик
 
Аватар для magpro
 
Регистрация: 23.08.2006
Сообщений: 586
Написано 6 полезных сообщений
(для 7 пользователей)
Re: Звёзды. звёзды (небесные в смысле)

Сообщение от ЛысыЙ_Чук-Иванчук
Юзай партиклы
Можно подробней как это реализовать?
__________________
Никто не запомнит тебя за твои мысли...
(Offline)
 
Ответить с цитированием
Старый 29.09.2007, 22:03   #8
H@NON
Дэвелопер
 
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений
(для 774 пользователей)
Re: Звёзды. звёзды (небесные в смысле)

Вот какая система может быть: сначало делаешь обычный skybox(или skyshere=) ) кладешь на нее тексу звездного неба и скалишь ее так чтоб границы совпадали со вторым значением в команде camerarange, то есть с дальностью видимости. Далее делаешь свою систему ЛОДа. На словах она будет такой: если объект ближе чем значение дальности видимости, то показываем спрайт. Если звезда будет слишком близко, чтоб ее можно было рассмотреть, то показываем вместо спрайта сферу.
(Offline)
 
Ответить с цитированием
Старый 29.09.2007, 23:36   #9
ЛысыЙ_Чук-Иванчук
Дэвелопер
 
Регистрация: 19.03.2006
Сообщений: 1,241
Написано 10 полезных сообщений
(для 17 пользователей)
Re: Звёзды. звёзды (небесные в смысле)

Можно подробней как это реализовать?
Да без проблем! создавай много спрайтов(можно заюзать либу для большого кол-ва объектов) и рандомно расставляеш спрайты по окружению!
(Offline)
 
Ответить с цитированием
Старый 29.09.2007, 23:38   #10
Crystal
Терабайт исходников
 
Аватар для Crystal
 
Регистрация: 05.07.2007
Сообщений: 5,196
Написано 1,721 полезных сообщений
(для 5,374 пользователей)
Re: Звёзды. звёзды (небесные в смысле)

Всегда звёзды это текстура скай бокса. нинадо ничего лишнего грузящего комп выдумывать.
__________________
Проект "Deathbring World - Rangers" и его финансовая поддержка:
https://boosty.to/deathbringrangers

Я на - TWITCH
Канал на YouTube
(Offline)
 
Ответить с цитированием
Старый 29.09.2007, 23:45   #11
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Re: Звёзды. звёзды (небесные в смысле)

Crystal, а если недо к этой звезде подлететь?
А если ето космический симулятор, и там от одной звезды до другой пролетаеш за 10 секунд, при этом "пролетая" окола 10 других звезд?
(Offline)
 
Ответить с цитированием
Старый 30.09.2007, 13:02   #12
magpro
Разработчик
 
Аватар для magpro
 
Регистрация: 23.08.2006
Сообщений: 586
Написано 6 полезных сообщений
(для 7 пользователей)
Re: Звёзды. звёзды (небесные в смысле)

Скай боксами там не отделаться.

Я хочу сделать такой эффект что ты реально летишь по звёздному небу который напичкан звёздами, Звёздной пылью, каметами, астеройдами.


а в дали естественно будет бокс с текстурой звёзд.

Пока что нашёл такой выход.

Создаю 10'000 спрайтов звёзд + 10'000 сфер разного цвета и радиуса и размещаю их рандомно.

Вроде у меня не очень тормозит.

и мне 20 тыс маловато)
Хочу больше но когда делаешь больше 10 тыс объектов одного типа то он выдаёт ошибку рендинга.

ЧТобы всё не очень тормозило делаю у камеры фог.
__________________
Никто не запомнит тебя за твои мысли...
(Offline)
 
Ответить с цитированием
Старый 30.09.2007, 13:31   #13
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Re: Звёзды. звёзды (небесные в смысле)

АФИГЕТЬ КАМРАД!!!
Это же похоронит рендер не тока блица, но и любого другого движка ко всем чертям!
Размерность 3д?
То есть летать можно во всех трех направленях, или достаточно в 2-ух?

Какая нах разница, что ты делаеш фог? все равно ВСЕ эти 20000 оюъектов должны быть проверенны (каждый их вертес причем), на расстояние до камеры.

Алгоритм такой:
есть список объектов - которые следует удалить
есть список всех звезд - если звезда дальше определнного расстояние, то запихиваем ее в первй список.
каждая звезда это спрайт и сфера, что из показывать, а что спрятать определяеш через расстояние (Проверяеш ето естественно не каждый такт)
далее. у тебя есть массив!( не type) точек, с 20000 тысячью надо выжимать помаксимуму. типа такого starpos#(40000,3).
Далее, джопустим за 1 игровой цикл проверяеш 1000 таких точек, если они появились достаточно близко к камере, то стаивш на ето место звезду.
(Offline)
 
Ответить с цитированием
Старый 30.09.2007, 15:28   #14
magpro
Разработчик
 
Аватар для magpro
 
Регистрация: 23.08.2006
Сообщений: 586
Написано 6 полезных сообщений
(для 7 пользователей)
Re: Звёзды. звёзды (небесные в смысле)

Сообщение от HolyDel
АФИГЕТЬ КАМРАД!!!
Это же похоронит рендер не тока блица, но и любого другого движка ко всем чертям!
Размерность 3д?
То есть летать можно во всех трех направленях, или достаточно в 2-ух?

Какая нах разница, что ты делаеш фог? все равно ВСЕ эти 20000 оюъектов должны быть проверенны (каждый их вертес причем), на расстояние до камеры.

Алгоритм такой:
есть список объектов - которые следует удалить
есть список всех звезд - если звезда дальше определнного расстояние, то запихиваем ее в первй список.
каждая звезда это спрайт и сфера, что из показывать, а что спрятать определяеш через расстояние (Проверяеш ето естественно не каждый такт)
далее. у тебя есть массив!( не type) точек, с 20000 тысячью надо выжимать помаксимуму. типа такого starpos#(40000,3).
Далее, джопустим за 1 игровой цикл проверяеш 1000 таких точек, если они появились достаточно близко к камере, то стаивш на ето место звезду.
Заставил задуматься.

спс.
__________________
Никто не запомнит тебя за твои мысли...
(Offline)
 
Ответить с цитированием
Старый 30.09.2007, 17:18   #15
Delta_Q
Нуждающийся
 
Регистрация: 23.09.2007
Сообщений: 62
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Звёзды. звёзды (небесные в смысле)

Вот пару способов:
1) Звезды будут не сферами, а точками со светимостью и если игрок приближеться к такой точки на дистанцию реиндеренга то трансформировать точьку в сферу и текстуру.
2) Сделать сферу на границе реиндеренга и генерировать текстуру на сферу по вектору от препологаемой звезды. Т.е. Вы будите видеть не саму звезду а ее проекцию на сферу. Но как тока вы приблизитесь к объекту на растояние видимости то прекращать отрисовывать объект на сфере а уже в сцену прорисовывать CreateSprite с натянутыми на нее текстурами.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос жизни и смерти (в прямом смысле!) CJ КАКТУС Болтовня 19 24.04.2007 00:30


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


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