Как я могу ограничить область рисования в металле?IOS

Программируем под IOS
Ответить
Anonymous
 Как я могу ограничить область рисования в металле?

Сообщение Anonymous »

Я пишу приложение для рисования на изображениях SVG. Я объединяю ара и металл. Но я сталкиваюсь с проблемой, с которой я ограничен рисовать только белые области на изображении SVG. Я использую черно -белую технику маски текстуры и рисую только белые области. Я вижу, что еще одна техника-буфер трафарета, но он ограничен от 0-255. Как я могу нарисовать абсолютно плотное и неограниченное?fragment float4 fragment_point_func_without_texture(
Point point_data [[ stage_in ]],
texture2d maskTexture [[ texture(1) ]],
constant float2 &drawableSize [[ buffer(2) ]],
float2 pointCoord [[ point_coord ]]
) {
constexpr sampler textureSampler(mag_filter::nearest, min_filter::nearest);

// 1. Lấy UV từ tọa độ canvas
float2 uv = point_data.position.xy / drawableSize;

// 2. Lấy màu từ mask tại UV
float4 maskColor = maskTexture.sample(textureSampler, uv);

// 3. Nếu mask là màu đen → bỏ qua (không vẽ)
if (all(maskColor.rgb

Подробнее здесь: https://stackoverflow.com/questions/796 ... a-in-metal
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»