armory3d / armory3d/armorpaint

Face Fill mode ignores selected UDIM

Open
#2,081 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
C
Stars
5.1k
Forks
572
Avg merge
3d 11h
Merged PRs (30d)
6

Description

**ArmorPaint version:**
[1.0a 44ce84e](https://github.com/armory3d/armorpaint/commit/44ce84ef0a736b94c879ef54ad72784d1b1fd657)

**OS / GPU model:**
Fedora 44 Plasma
RX6570XT : Vulkan RADV

**Issue description:**
When multiple UDIM textures present, if using the bucket tool on Face mode, it paints UDIM textures on that location. As visible on the screenshots, I wanted to paint just that little beveled strip, but it paints both the face that I want and the 2nd UDIM face at that same position.
From the UVMap's wireframe on the 2nd and 3nd screenshot you can see how both polygons are in the position that I clicked in.
Happens both on viewport and the 2D view.

Image
Image
Image

**Steps to reproduce:**
1. Get a shared UDIM mesh ([example.zip](https://github.com/user-attachments/files/28262893/claw_machinev2.zip)) and import into armor paint
2. add a mask layer with distiguishable a material
3. select the bucket/fill tool
4. select the Face Fill Mode
5. Try to paint a face exclusively on one of the UDIMs

It will paint both faces that are located wherever you clicked

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the issue with the shared UDIM mesh from example.zip in ArmorPaint, using a mask layer, the bucket/fill tool, and Face Fill Mode. Compare painting in the viewport and 2D view with multiple UDIMs overlapping at the clicked position. Done means painting a face affects only the selected UDIM face rather than both faces at that location.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
computer-graphics
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.