Форум программистов, компьютерный форум, киберфорум
Программирование мультимедиа
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 30.10.2010
Сообщений: 68
1

Прорисовка двух сцен Directx9 C++

02.07.2011, 18:52. Показов 1232. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброе время суток, Форумчани!

Я уже третий день подряд долблюсь над проблемой... надеюсь вы поможите!

Задача состоит в том что надо рендерить первую сцену в текстуру, затем во второй сцене на двух полигонах нанести эту текстуру, и вывести вторую сцену на экран.

пробовал MRT, не вышло, или я что-то не так сделал =\
но MRT тут не совсем уместно, поскольку первая сцена изменяеться в разы реже второй, и рендерить их всегда вместе не выгодно.
Пытался в одном устройстве рисовать вторую сцену,и время от времени перерисововать первую сцену в текстуру.
Делал булевый флаг который запрешал пересекаться потокам,и работать на перекосяк.

Help!
Как это можно организовать?


Только что реализовал еще 1 способ:
я сделал одну большую сцену в которой сменивал матрицы проекции буферы вершин и все остальное и сначала рендерил один буфер вершин с текстурой(первая сцена) в мою текстуру, а затем опять изменял матрицы проекции и все остальное и рендерил уже новый буфер вершин с моей второй сцены.
Результат хороший, не много упали fps, НО, спустя 30 секунд на экране появляються рандомные битые пиксели, маленькими кусками экран рвет на части, он хаотично отобржаеться, это касаеться всего экрана и окна программы тоже.
Спустя около 2 минут - дамп памяти и фатал эррор, падает винда.


На скриншоте к сожалению битых пикселей не видно что бы вам показать...
Значит что вы видите, фиолетовый прямоугольник это первая сцена которая сохранена в текстуре и ренедриться в этой(второй) сцене на прямоуглоьник.
В первой сцене в свою очередь вы видите еще 1 прямоугольник, на котором есть также текстура.
http://s1.ipicture.ru/uploads/... F5323E.jpg

А для лучшего понимания покажу вторую сцену не много под углом.
http://s1.ipicture.ru/uploads/... 1581Ei.jpg
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.07.2011, 18:52
Ответы с готовыми решениями:

DirectX9. Вывод треугольника
Здравствуйте! Разбираю урок 4 по книге Горнакова, все в точности сделал как по книге, а фигура все...

Программа для создания моделей и сцен
Доброго времени суток! Ситуация такая - изучаю программирование на С++ + читаю книгу Таненбаума о...

Мерцание сцен
Всем добрый вечер! Задание: Создайте программу, где два геометрических примитива из библиотеки...

Смена сцен
Подскажите пожалуйста, как менять сцену, по нажатию кнопки, на ту которую я запишу в скрипте....

3
935 / 760 / 299
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
02.07.2011, 19:24 2
Рвёт может быть по той причине что ты не правильно соеденил координаты полигонов вершин при постройке примитива, бывает так strip, traingle.
0
0 / 0 / 0
Регистрация: 30.10.2010
Сообщений: 68
02.07.2011, 19:55  [ТС] 3
Нет нет, все соединено хорошо, и рвет весь экран, даже после закрытия программа, я думаю я гдето не правильно очищал видео память и они с каждым рендером накапивались.. ?
0
0 / 0 / 0
Регистрация: 30.10.2010
Сообщений: 68
30.07.2011, 17:38  [ТС] 4
Проблему решил переписав весь код, даже не знаю где была проблема, возможно не правильно очищал память.
0
30.07.2011, 17:38
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.07.2011, 17:38
Помогаю со студенческими работами здесь

DirectX9
немогу установить DirectX9 (((при установке выдает ошибку:"нет доверия к САВ-файлу,необходимому для...

Смена сцен JavaFX
Здравствуйте. Пишу приложение. Мне нужно, чтобы пользователь по специальной кнопке переходил...

DirectX9 Direct3D
Здравствуйте! Возникла проблема: При загрузке х. файлов из пакета ДиректХ все нормально (тот же...

DirectX9 на Windows7
Написана програма с использованием DirectX9. Писалось на XP. При перёносе екзе файла на компьютер с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru