Форум: "Игры";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];
Вниз10000 кубиков Найти похожие ветки
← →
Cash © (2006-01-07 07:50) [0]Whatsup! Люди, знает кто нибудь быстрый (желательно единовременный)
метод вывода трехмерных кубиков.
Метод, что я придумал (36 вершин на кубик, а потом в один буфер и на экран с D3DPT_TRIANGLELIST) не дает вывести и 20 кубиков.
Без текстур. Буфер индексов в топку, этот метод сразу не приемлем.
← →
Cash © (2006-01-07 13:25) [1]Пардон, товарищи, разобрался.
(Пора отвыкать от привычки задавать простые вопросы) :)))
← →
NailMan © (2006-01-07 13:26) [2]Почему не позволяет больше 20? фпс мал или какие-то ограничения видюхи?
По хорошему надо объединять кубики в буфер и выводить за один вызов DP на отрисовку около 1000 треугольников. В твоем случае это 30 кубиков(1080 фейсов, вершины сам посчитаешь). Карточки типа GF2/GF3/GF4 любят за вызов рисовать именно такое число примитивов - наиболее оптимально.
А вообще индексируемые примитивы рулят если ими уметь пользоваццо. Сильно экономит текстурку и скорость отрисовки.
---
P.L.U.R. and WBR, NailMan aka 2:5020/3337.13
← →
Cash © (2006-01-07 14:47) [3]NailMan © (07.01.06 13:26) [2]:
ФПС то впорядке, AV вылезал из за неправильного выделения длины буфера
вершин. Возьмем опять же 10000 кубиков, тобиш 360000 вершин,
а при создании буфера вершин я указал потолок в 320 с копейками тысяч
вершин.
Не, я знаю как с помощью буфера индексов снизить количество вершин на
кубик, но это не тот метод, что нужен. Поэтому в данных условиях буфер
индексов в топку.
← →
NailMan © (2006-01-07 15:44) [4]Вершин на кубик будет ровно 8, и 6 граней описано в индексном буфере. yf На самом деле все очень просто с индексными буферами, достаточно изучить SDK по функции DIP и понять как сие индексируется.
буфер вершин содержит список всех вершин, а индексный тройки индексов вершин образующих треугольник. Вот и все.
---
P.L.U.R. and WBR, NailMan aka 2:5020/3337.13
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.013 c