Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   [Stage3D] Рябь на текстуре. (http://www.flasher.ru/forum/showthread.php?t=211485)

Bletraut 09.09.2015 22:40

Рябь на текстуре.
 
Вложений: 1
Собственно есть модель плоскость, на ней текстура. По краям текстуры рябь. Все координаты UV равны либо 0, либо 1, либо 0.0005. Рябь не пропадает, как убрать? Может какие-то настройки поставить?

Zebestov 09.09.2015 23:43

Сделай атласу padding. Если ты про эти кизяки на краях, то это походу соседняя текстура уже вылазит.

Bletraut 09.09.2015 23:59

Это как бы текстура чанка. Padding это типа зазор в один пиксель?

Bletraut 10.09.2015 00:04

Вложений: 1
Сама текстура представляет собой следующее.

Zebestov 10.09.2015 00:45

Да. В идеале текстуры вот так впритык складывать не годится. Хотя бы 1px промежуток между ними быть должен.

Alex Lexcuk 10.09.2015 11:54

Можно еще попробовать изменять теги linear,norepeat,nomip может что-то и получиться.

Bletraut 10.09.2015 17:26

Цитата:

linear,norepeat,nomip
При linear изображение размытое, а мне нужен именно эффект пикселей. Остальные параметры ,кроме clamp, для прямоугольных текстур не поддерживаются.

Bletraut 10.09.2015 21:34

Вложений: 1
Сделал Padding, сам фон на текстуре прозрачный, но рябь так и осталась. Ещё есть варианты?

Bletraut 10.09.2015 21:48

Вложений: 1
Рябь вообще у всех или только у меня?

Nooob 10.09.2015 22:50

в таком случае ещё mip надо юзать

Alex Lexcuk 10.09.2015 22:57

Раз уж не получается, попробуй сделать на текстуре прозрачный белый, прозрачный черный, а потом не совсем прозрачный к примеру 0xFE. Zenit3D не пробовал.
По демке видно что как-бы там ребро другой грани показывается пунктиром, если его плавно вертеть, то сначала появляется желтый мелкий пунктир, затем кручу плавно дальше пунктир становится чаще, а потом появляется желтая грань, следовательно надо на модельке попробовать сделать тонкие прозрачные как-бы ребра.
А если приглядеться, то не на всех гранях такой эффект, следовательно, скорее всего что-то неправильно расчитано, это могут быть нормали или тангенты граней (или вертексов), не знаю как там в Zenit3D.

Bletraut 10.09.2015 23:11

Mip не юзается ибо текстура прямоугольная.

Добавлено через 3 минуты
Да, на двух гранях такого нет. Потому что текстура на этих полигонах находится на краю изображения, т.е. два края, а это левый и верхний, не контачат ни с чем, поэтому там и нет этого бага. Если выставить значение UV не 0.0005, а 0.0049, то такого бага уже не наблюдается.

Alex Lexcuk 10.09.2015 23:26

Если использовать прозрачность для этого как-бы куба, то по моему надо делать видимость обеих граней, а если сделать видимость для обеих граней (с позитивной нормалью и с негативной) то и проблема отойдет сама собой.

Bletraut 10.09.2015 23:28

Причем тут нормали? Они в рендеринге вообще не участвуют. Здесь именно баг с неточной выборкой цвета пиксела. Т.е. на самом деле выборка происходит не до 0.0005, а до 0.00051 из-за этого и захватывается другой кусок.

Добавлено через 53 секунды
А меньше чем 0 выборка не может происходить, поэтому у двух граней и нет этой ряби.

Добавлено через 1 минуту
Хотя если присмотреться, то там "коряво" выбранный пиксель слегка окрашивается в другой цвет, но на общем фоне это не заметно.

Добавлено через 5 минут
Я вижу лишь два способа решения этой проблемы

1) Умножать все UV на какое-то число, чтобы они они получились на 0.0001 меньше.
2) Делать вокруг текстуры обводку.

Zebestov 11.09.2015 13:20

У меня вообще белый экран.

Bletraut 11.09.2015 16:37

Это из-за того, что я использую прямоугольные текстуры. У меня у самого в браузере не работает, только в фд. Как-то только перехожу на нормальные, то всё работает. Но игра всё равно по AIR делается, так что я забил на эту проблему.

Bletraut 11.09.2015 19:38

Вложений: 1
Вот собственно версия без ряби. Сделал текстуру жирной и добавил culling.

Zenit3D.swf   (732.5 Кб)


Странно, но в 18 флеш плеере не работает. Компилил в фд для 12, хотя версия стоит 18, но компилится почему-то всегда 12. В чем проблема???

Bletraut 11.09.2015 20:32

Странно. Теперь в фд версия 18.0.0.209 и всё работает, а в браузере 18.0.0.232 и белый экран. Это баг?

Добавлено через 2 часа 56 минут
Я пришел к выводу, что на странице нужно установить
Код:

wmode=direct
, без это context3d недоступен, поэтому белый экран. Если я не прав, поправьте.


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

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