Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Pixel Bender/AGAL

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 18.03.2013, 12:33
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 1  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
По умолчанию Как дебажить AGAL

Вот произвел ты какие-то действия, например, в вершинной программе:
Код AS3:
"mov vt5.zw, vc0.zw\n" +
"mul vt0.xy, vt5.zw, vc0.zw\n" +
"add vt0.w, vt0.x, vt0.y\n" +
"sqt vt0.w, vt0.w\n" +
"div vt0.xy, vc0.zw, vt0.ww\n" +
А что там, в регистре vt0 в итоге получилось - одному ктулху gpu известно.

Может кто знает какие-то ide или способы для дебага шейдерных программ, их же не возможно писать, не зная что там в итоге получается.
__________________
Дети не должны знать о своих родителях

Старый 18.03.2013, 13:40
СлаваRa вне форума Посмотреть профиль Отправить личное сообщение для СлаваRa Найти все сообщения от СлаваRa
  № 2  
Ответить с цитированием
СлаваRa
 
Аватар для СлаваRa

блогер
Регистрация: Feb 2008
Адрес: http://playtika.com
Сообщений: 1,119
Записей в блоге: 5
Отправить сообщение для СлаваRa с помощью ICQ Отправить сообщение для СлаваRa с помощью Skype™
скаут
__________________
местонахождение

Старый 18.03.2013, 14:58
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 3  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Цитата:
Unfortunately no we will not support running Scout on 32-bit machines, nor on old operating systems such as XP. You can still profile content running on those machines, but Scout itself must be run on 64-bit machines. Sorry, but we decided to focus our efforts on new exciting features rather than supporting old systems.
Из операционных систем пк, он только на windows 7 работает? Может, какая кустарная сборка есть..
__________________
Дети не должны знать о своих родителях

Старый 18.03.2013, 15:25
Sintesis вне форума Посмотреть профиль Отправить личное сообщение для Sintesis Найти все сообщения от Sintesis
  № 4  
Ответить с цитированием
Sintesis
 
Аватар для Sintesis

Регистрация: Jul 2008
Сообщений: 912
Дебажить шейдеры невозможно никакие ни агал ни другие, если ты имеешь в виду трассировку. В скауте можно вроде только посмотреть результат работы.
Ошибки можно вывести в оутпут:
context3D.enableErrorChecking = true;.


Последний раз редактировалось Sintesis; 18.03.2013 в 15:45.
Старый 18.03.2013, 17:55
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 5  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
И все же, трассировать шейдеры возможно.

Утилита PIX из Microsoft DirectX SDK для Windows. В ней можно сделать захват программы и затем детально рассмотреть лог её выполнения, вместе со всеми шейдерными вычислениями.
Вот посмотрите, как на каждой строчке выполнения флешовой вершинной программы, можно посмотреть все текущие значения в регистрах:

Название: PIX.png
Просмотров: 759

Размер: 10.3 Кб

Просто невероятно, то что надо!
Раздизассемблированный код шейдера немного отличается от первоначального вида, но разобраться можно.

Вот вводная статья по PIX
Тулзу качать здесь.

После установки, она появиться в папке utils с именем PIX for Windows.exe

СлаваRa,
В скауте можно так-же дебажить шейдеры?
__________________
Дети не должны знать о своих родителях

Старый 18.03.2013, 19:00
Sintesis вне форума Посмотреть профиль Отправить личное сообщение для Sintesis Найти все сообщения от Sintesis
  № 6  
Ответить с цитированием
Sintesis
 
Аватар для Sintesis

Регистрация: Jul 2008
Сообщений: 912
Цитата:
Сообщение от Tails Посмотреть сообщение
И все же, трассировать шейдеры возможно.
О круто, а мне доказывали, что нельзя(. Хотя полезно-ли такое дело, ну может быть в какой-то мере да... Шейдер повторяется для каждой вершины, действует очень быстро, у каждой вершины будет свой результат и это всё за доли секунды, и что там можно будет увидеть в миллионах векторов...

Добавлено через 12 минут
лучше не заморачивайся, пиши шейдеры в RenderMonkey на HLSL(или просто найди любой шейдер в нете и открой в рендерманки), тамже превращай их в D3DAssembler(это делается одной кнопкой), выучи этот ассемблер на сайте майкрасофта про него всё есть и переписывай его в AGAL, это не сложно, AGAL и D3DAssembler очень похожи. То, что сверху в твоём скрине и есть d3dAssembler. Отличается от AGAL не сильно: ввод и вывод параматров немного по другому, буквы переменных, констант и остального - другие, например "r" в d3d это "v" в агале. Больше нет отличий серьёзных. Только в d3d есть циклы в агале нет( и ещё в d3d есть по моему 3 инструкции которых нет в agal, но их можно имитировать, они всего лишь совокупность нескольких инструкций в одной.
Отлично то, что для d3dassembler есть программы в которых удобно разрабатывать шейдеры, в рендерманки есть даже режим художника в котором не нужно знать языки шейдеров, чтоб сделать шейдер.


Последний раз редактировалось Sintesis; 18.03.2013 в 19:33.
Старый 18.03.2013, 19:22
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 7  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
В программе сохраняется лог для каждого кадра. Можно спокойно и не спеша, поэтапно проанализировать рендер любого кадра, любого меша, любого пиксела.

Sintesis,
Спасибо, наверное, я так и сделаю.
__________________
Дети не должны знать о своих родителях

Старый 18.03.2013, 19:43
Sintesis вне форума Посмотреть профиль Отправить личное сообщение для Sintesis Найти все сообщения от Sintesis
  № 8  
Ответить с цитированием
Sintesis
 
Аватар для Sintesis

Регистрация: Jul 2008
Сообщений: 912
Цитата:
Сообщение от Tails Посмотреть сообщение
В программе сохраняется лог для каждого кадра. Можно спокойно и не спеша, поэтапно проанализировать рендер любого кадра, любого меша, любого пиксела.
Капец, если такой трейс сделать для пиксельного шейдера, то этот шейдер повторится 60 раз в секунду для каждого пикселя, а пикселов миллионы, в секунду будут миллионы записей в лог, миллионы векторов, за несколько секунд такой лог будет размером несколько гигабайт.

Старый 20.03.2013, 16:27
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 9  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Sintesis,
Воспользовался твоим советом, скачал RenderMonkey, писать на высокоуровневом HLSL в 500 раз удобнее. И уроков полно, всё не нарадуюсь. Программа невероятно классная, ещё бы компилятор, чтоб прямиком в AGAL и совсем бы как в сказке было
__________________
Дети не должны знать о своих родителях

Создать новую тему Ответ Часовой пояс GMT +4, время: 17:31.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.