|
3D-программирование Вопросы, касающиеся программирования 3D мира |
30.05.2007, 18:37
|
#1
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,742
Написано 5,461 полезных сообщений (для 15,675 пользователей)
|
Как отрендерить в текстуру?
Пишу:
SetBuffer TextureBuffer (watertexture)
Text 640, 512, "ЖЖЖЖЖЖЖЖЖЖЖЖЖЖЖЖЖЖЖЖ", True, True
RenderWorld
А оно не рендерит в текстуру! Буфер-то задан, а оно всё равно не хочет! Притом, что надпись "ЖЖЖЖ" на текстуре есть, хотя по идее, она должна быть скрыта результатом рендера. как такое объяснить?
З.Ы. Если вдруг нада, могу дать полн. текст сей проги.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
30.05.2007, 20:53
|
#2
|
|
Re: Как отрендерить в текстуру?
flip не забываем .. (может я и ошибаюсь)
|
|
|
30.05.2007, 20:58
|
#3
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,742
Написано 5,461 полезных сообщений (для 15,675 пользователей)
|
Re: Как отрендерить в текстуру?
Но ведь надпись ЖЖЖЖ отобразилась!
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
30.05.2007, 21:25
|
#4
|
Гигант индустрии
Регистрация: 04.08.2006
Сообщений: 2,642
Написано 53 полезных сообщений (для 92 пользователей)
|
Re: Как отрендерить в текстуру?
гы... имхо она и должна быть
|
(Offline)
|
|
30.05.2007, 21:52
|
#5
|
Знающий
Регистрация: 07.09.2005
Сообщений: 238
Написано 2 полезных сообщений (для 2 пользователей)
|
Re: Как отрендерить в текстуру?
В Хелпе же всё есть...
Graphics3D 640,480
Camera=CreateCamera()
Light=CreateLight()
RotateEntity light,90,0,0
Cube=CreateCube()
PositionEntity Cube,0,0,5
tex=CreateTexture( 256,256 )
SetBuffer TextureBuffer( tex )
ClsColor 150,200,250
Cls
Font=LoadFont( "arial",35,True )
SetFont Font
Color 0,0,255
Text 0,50,"This texture"
EntityTexture Cube,Tex
Repeat
TurnEntity Cube,1,1,1
UpdateWorld
RenderWorld
Flip
Until KeyHit(1)
End
|
(Offline)
|
|
30.05.2007, 21:53
|
#6
|
Дэвелопер
Регистрация: 07.09.2005
Сообщений: 1,519
Написано 66 полезных сообщений (для 164 пользователей)
|
Re: Как отрендерить в текстуру?
ABTOMAT: "RTFM!" или "Господа, читайте Хелп, там всё сказано."
Команда RenderWorld рендерит картинку в задний буфер. В народе бытует распространенное заблуждение, что связка "SetBuffer+RenderWorld" что-то в этой ситуации изменит, но заблуждение и реальность - это всё-таки две большие, и одна мелкая разница...
Впрочем, цена всей мэгапроблемы тут, а равно и ёё решение- это добавленный в код CopyRect. О том, куда и зачем добавлять CopyRect - спрашивать не у форума, а у Хелпа.
Удачи!
P.S. Судя по приведенному сегменту кода, есть мнение, что автору темы следует также прочитать Хелп по команде UpdateWorld.
2 axel186: Заметьте! Автор спрашивал как отрендерить в текстуру мир, а не нарисовать на текстуре текст.
|
(Offline)
|
|
30.05.2007, 22:15
|
#7
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,742
Написано 5,461 полезных сообщений (для 15,675 пользователей)
|
Re: Как отрендерить в текстуру?
CopyRect пробовал, но он страшшно тормозит. Вопрос: из-за чего это происходит и как этого мона избежать?
Вот кусок кода, отвечающий за копирование прямоугольнега:
SetBuffer BackBuffer() ; снова ставим буфером задний буфер
RenderWorld()
CopyRect 0,0,1280,1024, 0,0, BackBuffer(), TextureBuffer(watertexture)
CameraProjMode cam, 1 ; вновь включаем основную камеру...
CameraProjMode watercam, 0 ; ...и отключаем водяную.
З.Ы. А нельзя ли как-нить копировать не прямоугольник, а сразу весь BackBuffer? Всмысле, нету ли способа пошустрее?
З.З.Ы. Diplomat, а зачем мне UpdateWorld? Он ответственен за анимацию да коллизию, которых у меня нет пока что.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
30.05.2007, 22:39
|
#8
|
Дэвелопер
Регистрация: 07.09.2005
Сообщений: 1,519
Написано 66 полезных сообщений (для 164 пользователей)
|
Re: Как отрендерить в текстуру?
А, молодец, КопиРект осилил, значит соображаешь.
Однако- 1280х1024 - это ИМХО слишком. Текстура с такими масштабами должна быть "хотя бы" 2048х2048, да и вообще, прогнать такие обьемы быстро не получится... Разьясни подробнее суть вопроса, ибо здаётся мне, что-то принципиально не то творишь.
Если же чётко по сути вопроса, то заметно ускорить работу с текстурой можно поставив ей флаг 256 (см. Хелп). Но производительность всё равно будет весьма невелика.
P.S. - вот и я о том же. Зачем тебе, думаю, УпдейтВорлд прямо в коде рендеринга в текстуру? Только теперь, гляжу, ты его оттуда уже убрал путём тихого редактирования сообщения. Что-ж, разумное и своевременное решение. ))
|
(Offline)
|
|
30.05.2007, 23:25
|
#9
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,742
Написано 5,461 полезных сообщений (для 15,675 пользователей)
|
Re: Как отрендерить в текстуру?
Diplomat, дык я его давно осилил уже, просто искал способ сразу отрендерить в текестуру ничего не копируя, но, как я выяснил, шмоная Хелп,
Rendering to other buffers is currently not supported by Blitz3D.
|
Да за шо я им деньги платил? Шоб денно и нощно #йца чесали?!
З.Ы. Платил я или нет - это уже другой вопрос
Разьясни подробнее суть вопроса, ибо здаётся мне, что-то принципиально не то творишь.
|
Diplomat, ты мне сам сказал как строить отраженя (две камеры - 1 основная - другая - подводная). Специально по этому поводу задавал много тупых вопросов относительно сурфэйса, смог назначить правильно текс. координаты, но лажанулся на такой вот пакости
З.Ы. огромное спасибо за подсказку насчёт флага 256
...путём тихого редактирования сообщения. Что-ж, разумное и своевременное решение. ))
|
Есть немного
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
30.05.2007, 23:35
|
#10
|
Бывалый
Регистрация: 22.09.2005
Сообщений: 634
Написано 36 полезных сообщений (для 102 пользователей)
|
Re: Как отрендерить в текстуру?
мдя... решение под ногами....
Подсказываю:
Стандартными средствами блица в текстуру рендерить нельзя
|
(Offline)
|
|
30.05.2007, 23:40
|
#11
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,742
Написано 5,461 полезных сообщений (для 15,675 пользователей)
|
Re: Как отрендерить в текстуру?
решение под ногами валялось....
|
НУБ, шо за решение? флаг 256 решает проблему лишь частично.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
31.05.2007, 00:55
|
#12
|
Гигант индустрии
Регистрация: 04.08.2006
Сообщений: 2,642
Написано 53 полезных сообщений (для 92 пользователей)
|
Re: Как отрендерить в текстуру?
он намекает на нестандартные средства
|
(Offline)
|
|
31.05.2007, 01:00
|
#13
|
Дэвелопер
Регистрация: 07.09.2005
Сообщений: 1,519
Написано 66 полезных сообщений (для 164 пользователей)
|
Re: Как отрендерить в текстуру?
ты мне сам сказал как строить отраженя
|
Гм... текстура отражений 1280х1024 ?.. Такого я не говорил!
См. http://www.boolean.name/showthread.php?t=230 - тема археологически древняя, код такой же. Но суть некоторым образом ИМХО поясняет.
Товарищи! Не ленитесь копаццо по разделам! Там много хороших вещей можно найти!
...
Тема про AShadows лежит как раз под ногами: ровно на шесть разделов ниже. ))
|
(Offline)
|
|
16.06.2007, 16:40
|
#14
|
ПроЭктировщик
Регистрация: 27.05.2007
Сообщений: 110
Написано 40 полезных сообщений (для 33 пользователей)
|
Re: Как отрендерить в текстуру?
А как определить точку в текстуре, куда стрельнул хто-то, и прорисовать туда след от пули?
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 13:18.
|