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

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

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

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

Ответ
 
Опции темы
Старый 21.03.2009, 21:48   #1
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Загрузка SBS

теоретически, SBS сюрфейсы могут работать быстрее, из-за сортировки индексов так, чтобы максимальное число вершин попадало в TnL кеш.

на практике я как таковой разницы в блице не заметил. у меня получалось выигрывать таким способом 10-20% в скорости.

Function LoadSBS(filename$)
	e =ReadFile(filename)
	m = CreateMesh()
	s = CreateSurface(m)
	
	chr_0 = ReadByte(e)
	chr_1 = ReadByte(e)
	chr_2 = ReadByte(e)
	chr_3 = ReadByte(e)
	chr_4 = ReadByte(e)
	chr_5 = ReadByte(e)
	
	fake0 = ReadInt(e)
	fake1 = ReadInt(e)
	fake2 = ReadInt(e)
	
	primtype = ReadInt(e)
	DebugLog primtype
	
	ci = ReadInt(e)
	cv = ReadInt(e)
	For i = 1 To ci/3
		i0 = ReadShort(e)
		i1 = ReadShort(e)
		i2 = ReadShort(e)
		
		AddTriangle(s,i0,i1,i2)
	Next
	
	For i = 1 To cv
		u# = ReadFloat(e)
		v# = ReadFloat(e)
		
		r = ReadFloat(e)
		g = ReadFloat(e)
		b = ReadFloat(e)
		a = ReadFloat(e)
		
		nx# = ReadFloat(e)
		ny# = ReadFloat(e)
		nz# = ReadFloat(e)
	
		x# = ReadFloat(e)
		y# = ReadFloat(e)
		z# = ReadFloat(e)
			
		AddVertex(s,x,y,z,u,v)
		VertexNormal(s,i-1,nx,ny,nz)
	Next
	
	RotateMesh m,-90,0,0
	DebugLog ci
	DebugLog cv
	CloseFile(e)
	Return m
End Function
http://likosoft.ucoz.ru/SBSloader.zip

Последний раз редактировалось HolyDel, 21.03.2009 в 22:12.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Main Cry (22.03.2009)
Старый 21.03.2009, 22:36   #2
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Загрузка SBS

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

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

(Offline)
 
Ответить с цитированием
Старый 21.03.2009, 22:47   #3
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Загрузка SBS

можно. есть видеокарта, у нее есть процессор, который обрабатывает вершины. часто бывает так, что некоторые вершины надо обрабатывать несколько раз. Если к ней "привязан" не один треугольник. После обработки вершины (положения, освещения, скорее всего после обработки вершинным шейдером вообще) результат помещается в некий кеш - post - TnL кешом он называется. Так вот, если мы будем обрабатывать треугольники так, чтобы вершины были в кеше - то заново их рассчитывать не придется, что ускорит вывод

http://www.gamedev.ru/articles/?id=20124

Последний раз редактировалось HolyDel, 21.03.2009 в 22:59.
(Offline)
 
Ответить с цитированием
Эти 5 пользователя(ей) сказали Спасибо HolyDel за это полезное сообщение:
ABTOMAT (21.03.2009), CRASHER (28.03.2009), impersonalis (21.03.2009), moka (21.03.2009), Tadeus (22.03.2009)
Старый 21.03.2009, 22:56   #4
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Загрузка SBS

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

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

(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
загрузка Exe Max Payne 3D-программирование 7 04.08.2010 22:41
Загрузка карты из 3ds mr.DIMAS FAQ 6 01.02.2009 16:23
Загрузка AndruXa Blitz3D 47 05.10.2007 01:24
Загрузка уровня alcoSHoLiK FAQ 0 26.04.2007 19:47
Загрузка b3d untouchable 3D-программирование 3 13.03.2007 15:54


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


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