Gaten tussen mondsleutelvormen in een 2D-personagerig oplossen
Om gaten tussen mondsleutelvormen op te lossen, zoek je de exacte parameterwaarden waarbij het gat verschijnt, bepaal je welke lip, binnenmesh of welk masker is getroffen en herstel je die overgang. Voeg een tussenliggende sleutelvorm toe wanneer de bestaande vormen een ander verloop ertussen nodig hebben; controleer eerst of ontbrekende sleutels of instellingen voor uitsnijden het probleem verklaren.
Deze gids is bedoeld voor makers die problemen oplossen met een vervormende mond in Live2D Cubism. Je hebt het bewerkbare model nodig, toegang tot de mondparameters en een opgeslagen kopie voordat je wijzigingen aanbrengt. Het doel is een mond die tijdens de hele beweging gesloten blijft, ook op posities tussen je voltooide poses.
Waarom kunnen voltooide mondsleutelvormen er goed uitzien terwijl er tijdens overgangen gaten ontstaan?
Een sleutelvorm legt de vorm van een object vast bij een bepaalde parameterwaarde. Cubism interpoleert de vormen tussen sleutels automatisch, dus een nette gesloten mond en een nette open mond garanderen niet dat elke tussenliggende positie er goed uitziet. De officiële handleiding over parameters laat deze relatie zien aan de hand van het openen en sluiten van de mond.
Cubism gebruikt normaal gesproken lineaire interpolatie. In de documentatie over uitgebreide interpolatie staat dat punten die langs rechte lijnen bewegen ongewenste krimp kunnen veroorzaken wanneer de bedoelde beweging een kromme volgt. Bij het oplossen van mondproblemen kun je hiermee een nuttig onderscheid maken: inspecteer zowel de poses die je hebt gemaakt als de paden die ze met elkaar verbinden.
Beschouw de mond als een geheel van samenwerkende vormen. De contour van de lippen, de gekleurde binnenkant en een uitsnijdmasker kunnen op een sleutel netjes op elkaar aansluiten, maar tijdens de overgang uit elkaar bewegen. Je eerste taak is vaststellen welke randen niet meer op elkaar aansluiten.
Hoe vind je de parametercombinatie waarbij het gat ontstaat?
Sla een aparte werkkopie op en zet daarna niet-gerelateerde parameters terug naar hun standaardwaarden. Begin met het gezicht recht naar voren, zodat je veranderingen in het openen en de vorm kunt bekijken zonder ook de hoofdbeweging aan te passen.
In een conventionele Cubism-configuratie loopt ParamMouthOpenY van 0 (gesloten) tot 1 (open), terwijl ParamMouthForm doorgaans van −1 via 0 naar +1 loopt. Aangepaste rigs kunnen andere bereiken gebruiken; controleer die van jou voordat je iets wijzigt. Deze conventies staan in Live2D's lijst met standaardparameters.
Doorloop deze diagnostische test. De voorbeeldwaarden zijn controlepunten, geen verplichte indeling van sleutelvormen:
- Houd Mouth Form op 0 en beweeg Mouth Open langzaam door het volledige bereik.
- Inspecteer openingswaarden zoals 0, 0.25, 0.5, 0.75 en 1.
- Herhaal dit met Mouth Form op elk uiteinde van het bereik.
- Houd de opening dicht bij het ergste gat en doorloop Mouth Form geleidelijk.
- Noteer de twee waarden en de plek waar het gebied zichtbaar wordt.
Deze werkwijze is een praktische diagnose op basis van Cubisms interpolatiegedrag. Als alleen het openen het probleem veroorzaakt, onderzoek dan eerst die overgang. Verschijnt het alleen wanneer je de mond tegelijkertijd opent en van vorm verandert, noteer dan beide waarden tijdens je onderzoek. Anders loop je het risico herhaaldelijk een pose aan te passen waarin het probleem niet optreedt.
Welk mondonderdeel moet je als eerste herstellen?
Inspecteer bij de probleemwaarden de mondonderdelen afzonderlijk. Isoleer ze tijdelijk in de werkkopie en zet hun zichtbaarheid terug voordat je het volledige resultaat beoordeelt. Gebruik de volgende tabel om te bepalen wat je daarna controleert; de vermeldingen zijn mogelijke oorzaken voor diagnostiek, geen bevestigde oorzaken.
| Wat je ziet | Wat je vervolgens controleert |
|---|---|
| Een smalle zichtbare strook tussen een contour en de binnenkant van de mond | De dekking van de binnenkant en de aangrenzende liprand |
| Een driehoekige inkeping tijdens een overgang | De lokale verplaatsing van hoekpunten en de indeling van driehoeken |
| Een volledig mondonderdeel dat verdwijnt | De sleuteldekking op dat object en de hiërarchie die het aanstuurt |
| Een dunne, bleke rand rond uitgesneden illustraties | De maskerranden en doorschijnende textuurpixels |
| Het probleem verschijnt alleen wanneer twee mondbesturingen gecombineerd worden | Dezelfde parametercombinatie op alle getroffen objecten |
Pas niet alle onderdelen tegelijk aan. Breng één kleine correctie aan, herhaal de probleembeweging en vergelijk het resultaat met de opgeslagen versie. Met een gerichte test kun je beter bepalen of de aanpassing de oorzaak heeft verholpen of het probleem slechts op één positie heeft verborgen.
Hoe herstel je de dekking van de binnenkant en de meshvervorming?
Begin bij de rand die het dichtst bij het gat ligt. Controleer of de binnenkant tijdens de probleemovergang achter de lip blijft doorlopen. Pas waar je illustratie dat toelaat de binnenkant zo aan dat deze een beetje onder de contour doorloopt, in plaats van erop te vertrouwen dat twee onafhankelijk vervormende randen precies op elkaar aansluiten. Dit is een modelleeraanbeveling, geen voorgeschreven maat voor de overlap.
Als het verplaatsen van de rand een scherpe inkeping of een onregelmatige curve oplevert, inspecteer dan de mesh. Live2D raadt aan geschikte ArtMeshes handmatig voor te bereiden voor gedetailleerde gezichtsvervormingen, waaronder die van de mond. In de handleiding Mesh handmatig bewerken worden de driehoekige meshstructuur en de hulpmiddelen voor het bewerken van hoekpunten en randen uitgelegd.
Let op hoekpunten die achterblijven terwijl aangrenzende punten bewegen, driehoeken die extreem smal worden en hoeken waarvan de beweging een onverwacht groot gebied meetrekt. Pas eerst de geometrie van de bestaande sleutelvorm aan. Als de topologie zelf een nette vorm in de weg staat, pas die dan aan in je opgeslagen kopie en controleer daarna opnieuw alle getroffen mondposes.
De documentatie van de oorspronkelijke maker geeft een nuttig voorbeeld: in Complexe mondvormen riggen in Live2D beschrijft Sydney Cook hoe de bovenlip, onderlip en het binnenmasker op elkaar worden afgestemd, met bewust beperkte geometrie aan de binnenkant om te voorkomen dat middelste hoekpunten achterblijven. Die constructie laat zien waarom gecontroleerde beweging van hoekpunten belangrijk is; het is geen universeel meshpatroon dat je in elke rig moet overnemen.
Wanneer moet je een tussenliggende mondsleutelvorm toevoegen?
Voeg een correctiesleutel toe wanneer de aangrenzende poses goed zijn, maar de vorm ertussen expliciete controle nodig heeft. Controleer eerst of de getroffen objecten de juiste sleutels hebben voor het volledige bereik waarin ze gebruikt worden. Live2D vermeldt dat een object met slechts één sleutelvorm alleen bij die sleutelwaarde wordt weergegeven; objecten die zichtbaar moeten blijven, hebben sleutels aan beide uiteinden van het parameterbereik nodig. Zie Sleutels aan parameters toevoegen/verwijderen.
Stel als voorbeeld dat de neutrale mond er goed uitziet bij openingswaarden 0 en 1, maar dat de binnenkant bij ongeveer 0.4 van de onderste contour wegtrekt. Selecteer het getroffen object, voer 0.4 in het numerieke veld van de parameter in en gebruik de knop + in het pop-upvenster voor parameterinstellingen om daar een sleutel toe te voegen. Corrigeer de vorm en inspecteer daarna beide nieuwe intervallen: 0–0.4 en 0.4–1. De officiële handleiding voor het bewerken van sleutels beschrijft hoe je met dit pop-upvenster een numerieke positie instelt en sleutels toevoegt.
Houd Mouth Form op de vastgelegde probleemwaarde terwijl je de correctie aanbrengt en controleer daarna aangrenzende waarden voor de mondvorm. Een correctie die alleen bij één exacte combinatie werkt, moet verder worden verfijnd. Voeg extra sleutels alleen toe wanneer tests een afzonderlijke vormaanpassing nodig maken; een dichte reeks sleutels maakt latere aanpassingen lastiger te beoordelen.
Hoe onderscheid je uitsnijartefacten van open geometrie?
Als de binnenkant goed lijkt te zijn geplaatst, maar de rand een bleke waas heeft, controleer dan eerst het uitsnijden voordat je de mond opnieuw vormgeeft. Live2D legt uit dat doorschijnende maskergrenzen de kleuren van onderliggende ArtMeshes kunnen laten doorschijnen. In de handleiding over het uitsnijdmasker wordt ook beschreven hoe je het masker selecteert via de instelling Clipping ID in de Inspector.
Controleer of de uitgesneden mondonderdelen naar het juiste masker verwijzen. Inspecteer dat masker vervolgens bij de probleemcombinatie van parameterwaarden. Voor het specifieke probleem met doorschijnende randen beschrijft de handleiding een duplicaat van het masker dat vergroot wordt, een dekking van 0% krijgt en wordt vervormd zodat het het origineel volgt. Pas deze methode alleen toe nadat je hebt vastgesteld dat het om een randartefact gaat.
Controleer ook de sleuteldekking van het masker en maak alle tijdelijk verborgen onderdelen weer zichtbaar voordat je exporteert. In dezelfde handleiding staat dat ontbrekende sleutelbereiken en verborgen maskers verschillen kunnen veroorzaken tussen de Editor en een SDK-applicatie. Test bij gebruik van uitsnijden het geëxporteerde resultaat in de toepassing waarvoor het bedoeld is.
Moet je uitgebreide interpolatie of Blend Shape-limieten gebruiken?
Uitgebreide interpolatie is het proberen waard wanneer de ongewenste vervorming ontstaat door het traject tussen vormen die op zichzelf bruikbaar zijn. Vergelijk de instelling op het getroffen object en herhaal je parametercontrole. Cubism biedt gebogen interpolatie via de instellingen voor Extended Interpolation. In de handleiding over het interpolatietype staat dat hiervoor minimaal drie parametersleutels nodig zijn.
Een gebogen traject zorgt er niet voor dat de binnenkant de opening bedekt of dat het masker juist is toegewezen. Behoud de instelling alleen als inspectie verbetering laat zien in het relevante bereik. Live2D vermeldt in de handleiding over uitgebreide interpolatie ook dat gegenereerde interpolatiesleutels het model groter kunnen maken wanneer meerdere parameters betrokken zijn.
Als je rig overlappende Blend Shapes voor klinkers gebruikt, onderzoek dan hun gecombineerde invloed. Live2D laat specifiek zien hoe mondvormen kunnen vervormen wanneer meerdere Blend Shapes voor klinkers actief zijn en legt uit hoe je hun bijdragen kunt begrenzen in Limietinstellingen voor Blend Shape-gewichten. Dit geldt voor combinaties van Blend Shapes; voor een gewone correctie van de mondopening hoef je de rig niet om te zetten.
Hoe controleer je of de reparatie tijdens de volledige mondbeweging standhoudt?
Herhaal na elke betekenisvolle wijziging de oorspronkelijke test. Bekijk de mond vergroot om kleine problemen te vinden en vervolgens op het beoogde weergaveformaat om het zichtbare resultaat te beoordelen. Neem ook de posities direct vóór en na elke correctiesleutel mee, in plaats van alleen de sleutel zelf te controleren.
Gebruik deze controlelijst om te bepalen of je klaar bent:
- Doorloop Mouth Open met Mouth Form in het midden en aan beide uiteinden.
- Doorloop Mouth Form bij een gesloten, gedeeltelijk geopende en volledig geopende mond.
- Beweeg beide besturingen tegelijk door het gebied waar het probleem eerder optrad.
- Herstel de overige besturingen en controleer de hoofdposities die het personage gebruikt.
- Controleer of tijdelijke isolatie-instellingen zijn teruggezet.
- Vergelijk bij gebruik van uitsnijden het geëxporteerde model in de toepassing waarvoor het bedoeld is.
Een goede reparatie verhelpt een reproduceerbare oorzaak: ontbrekende sleuteldekking, een rand die losraakt, een mesh die slecht vervormt of een masker dat een ongewenste rand zichtbaar maakt. Houd de vastgelegde probleemwaarden bij de hand tot de laatste controle. Zo kun je precies nagaan of het oorspronkelijke gat is verdwenen en de mondbeweging eromheen nog steeds goed werkt.
Bronnen
- Over parameters — Live2D Editor-handleiding
- Lijst met standaardparameters — Live2D Editor-handleiding
- Sleutels aan parameters toevoegen/verwijderen — Live2D Editor-handleiding
- Mesh handmatig bewerken — Live2D Editor-handleiding
- Complexe mondvormen riggen in Live2D — Sydney Cook
- Uitsnijdmasker — Live2D Editor-handleiding
- Over uitgebreide interpolatie — Live2D Editor-handleiding
- Interpolatietype — Live2D Editor-handleiding
- Limietinstellingen voor Blend Shape-gewichten — Live2D Editor-handleiding
