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

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

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

Регистрация: Mar 2013
Адрес: Вне пространства.
Сообщений: 566
Отправить сообщение для Bletraut с помощью ICQ Отправить сообщение для Bletraut с помощью Skype™
По умолчанию Смена версии AGAL.

Суть проблемы такова: версия агал не меняется. Собственно, у версий AGAL1 и AGAL2 куча различий, одно из них - поддержка команд ine, ifl, ifg, ife, els, eif. Если писать эти команды в шейдере на AGAL1, то выдаст ошибку
Цитата:
error: opcode requires version 2.
Смена версии происходит в изменении параметра Context3DProfile в методе Stage3D.requestContext3D(), из доков нахожу что,
Цитата:
STANDARD : String = "standard"
[статические] Используйте стандартный профиль для процессоров с поддержкой MRT, AGAL2 и плавающих текстур.
итак я пишу:
Код AS3:
stage3D.requestContext3D("auto", Context3DProfile.STANDART);
Запускаю, а там опять такая же ошибка. В чем дело? Он не меняется? Он не поддерживает или что?
__________________
Я заклинаю вас действовать иначе.

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

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
А что вы используете для "компиляции" шейдеров? Я имею ввиду - наверняка какой-нибудь AGAL-[что-то там]-assembler, который как раз занимается тем, что парсит текст написанного Вами шейдера и переводит его в набор байтиков, а затем уже эти байты отправляются на GPU. Так вот, предлагаю Вам проверить, что во время создания бинарной версии шейдера, в него попадает правильная версия AGAL
__________________
...вселенская грусть

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

Регистрация: Mar 2013
Адрес: Вне пространства.
Сообщений: 566
Отправить сообщение для Bletraut с помощью ICQ Отправить сообщение для Bletraut с помощью Skype™
Проверил, действительно, по умолчанию версия стояла 1, изменил на 2. Спасибо за ответ!
Код AS3:
		public function assemble( mode:String, source:String, version:uint=1, ignorelimits:Boolean=false ):ByteArray
		{
Добавлено через 32 секунды
Всё работает.
__________________
Я заклинаю вас действовать иначе.

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

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

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


 


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


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