De Sprite Renderer is ook nodig voor de ontwikkeling van 2D-projecten. Het definieert de weergave van sprites. Dit kan bijvoorbeeld worden gebruikt om de illusie van diepte te creëren in 2D-games.
Wat is een Sprite-renderer?
Een sprite-renderer is een zeer belangrijk onderdeel als het gaat om het ontwikkelen van 2D-projecten, omdat het definieert hoe een sprite wordt weergegeven. Het is een belangrijk onderdeel van het tilemap-systeem om de instellingen goed te laten werken.
Voeg de sprite-renderer toe
Als u in een 2D-scène werkt, is de Sprite Renderer erg belangrijk omdat u hiermee afbeeldingen als een Sprite kunt weergeven. Dit kan ook worden gebruikt voor 3D-projecten.
Voeg een nieuwe gamecomponent of een GameObject toe met Add Component. Ga naar het menu Componenten en kies Component -> Rendering -> Sprite Renderer
Je kunt ook een GameObject toevoegen die al een Sprite Renderer heeft:
GameObject–> 2D-object–> Sprite
U voegt een component toe die al aan het GameObject is gekoppeld. Hiermee kunt u instellingen aanpassen om te bepalen hoe het GameObject wordt weergegeven.
Voeg nog twee GameObjects toe aan je scène en zorg ervoor dat ze allebei een sprite-renderer hebben.
Vanaf hier kun je de twee GameObjects zien, die beide een sprite-renderer hebben. We gebruiken de Sprite Renderer om in te stellen hoe de Sprite en de twee GameObjects reageren. Laten we daarom de opties doornemen die kunnen worden ingesteld in de Sprite Renderer.
De instellingen voor de Sprite Renderer
Selecteer een Sprite GameObject dat je ziet. Je gaat volgen instellingen beschikbaar om de sprite-renderer te wijzigen:
sprieten: De sprite die wordt weergegeven: Sprite-objecten kunnen worden gegenereerd op basis van texturen door Sprite-instellingen te maken tijdens het importeren of door ze te maken met de Sprite Editor Tool. U voegt hier de sprite toe die moet worden weergegeven.
Kleur: Die Farben des gerenderten Netzes für das Sprite: Diese Einstellung ist nützlich, um die Farbe des Sprites anzupassen.
Zoek de Sprite-instellingenn en voeg via slepen en neerzetten de sprite toe die je voor het object wilt gebruiken:
Omdraaien: Dit zal de sprite in het x- of y-vlak spiegelen en de sprite effectief spiegelen
Hier is gespiegeld op de X-as:
Hier spiegel je op de Y-as:
Hier spiegel je tegelijkertijd op de X- en Y-as:
Materiaal: dit is het materiaal dat voor de sprite wordt gebruikt: het is handig als je speciale materialen hebt die je door de sprite wilt laten renderen.
Tekenmodus: deze instelling heeft verschillende opties met een vervolgkeuzemenu dat bepaalt hoe een sprite wordt geschaald wanneer u de grootte wijzigt.
sorteer Verschillende Lagen: Dit is het niveau dat de prioriteit van de sprites-overlay bij het renderen definieert. Kortom: staat er een pinguïn voor of achter de iglo? U definieert de niveaus voor de sprite.
Bestel in laag: De overlayprioriteit van de sprite binnen zijn eigen laag. Lagere nummers worden als eerste weergegeven en volgende nummers overlappen de onderstaande. Dit is handig als je een specifieke sprite hebt die je achter andere sprites op hetzelfde niveau wilt verbergen. Het heeft een vergelijkbare functie als de sorteerlaag.
Masker interactie: Wanneer spritemaskering wordt gebruikt, bepaalt dit hoe de sprite zich gedraagt met het spritemasker. Er zijn drie mogelijke opties: Geen, Masker zichtbaar binnen, Masker zichtbaar buiten. Dit moet worden gecontroleerd bij het gebruik van Sprite-maskers.
Klik op de Tekenmodus van de Sprite Renderer om meer instellingen te krijgen.
Eenvoudig: Deze instelling beïnvloedt hoe de afbeelding in alle richtingen wordt geschaald wanneer de grootte verandert.
Gesneden: Gebruik deze optie als je een sprite met 9 segmenten maakt en die secties wilt vergroten. In deze modus blijven de hoeken even groot, terwijl de boven- en onderkant van de kan horizontaal uitzetten. De zijkanten van de sprite worden verticaal groter en het midden van de sprite verandert al horizontaal en verticaal om de grootte van de sprite aan te passen.
Betegeld: Gebruik deze optie als je een sprite met 9 plakjes gebruikt en wilt dat de secties worden herhaald. In deze modus blijft de sprite even groot en wordt niet geschaald. In plaats daarvan herhalen de boven- en onderkant van de sprite zichzelf horizontaal en de zijkant verticaal. Het midden van de sprite herhaalt de tegelvorm van het tabblad, wat overeenkomt met de grootte van de sprite.
Kiezen Betegelde optie uit de lijst om meer instellingen te krijgen.
MAAT: Gebruik dit om de horizontale en verticale verandering van de sprite aan te passen. U moet deze instellingen maken om de grootte van de sprite te wijzigen bij gebruik van een 9-sliced sprite (9-part tiled sprite).
Tegel modus: Gebruik deze instelling om te bepalen hoe de secties worden herhaald als de afmetingen van de sprite veranderen.
Geavanceerde instellingen van de tegelmodus:
continu: Deze instelling is belangrijk als het gaat om het veranderen van de grootte van de sprite, als deze gelijkmatig zou moeten veranderen.
Aangepaste: dit deel wordt alleen herhaald wanneer de dimensie van de sprite de rekwaarde bereikt.
Stretchwaarde: deze waarde varieert van 0 tot 1. Eén vertegenwoordigt de afbeelding die twee keer zo groot is als het origineel. Als de waarde 1 is, wordt de sectie herhaald wanneer de afbeelding twee keer zo groot is als het origineel.
Sprite renderer materialen
Een sprite-renderer gebruikt texturen om sprite-eigenschappen aan te geven, maar hij gebruikt ook shaders en andere materialen. Dit betekent dat je hetzelfde materiaal kunt gebruiken om verschillende sprites te veranderen zonder dat je je zorgen hoeft te maken over welke textuur bij welk materiaal hoort. De sprite wordt weergegeven op een mesh die op elk punt positie, kleur en UV gebruikt, maar geen normale vector. Als het normale vectoren kan gebruiken, kunt u dit doen met de vertex shader. Er zijn twee shaders die voor sprites worden gebruikt:
Sprites / Standaard: Ties is een eenvoudige alfa blended shader die geen interactie heeft met het licht in de scène.
Sprites / Diffuus: Dit is een eenvoudige alfa-blended oppervlakteschaduw die in wisselwerking staat met het licht in de scène. De shader genereert een naar voren gerichte normaalvector.
Sprites omdraaien:
1. Neem een tweede sprite en maak deze ondergeschikt aan de eerste.
2. Selecteer de bovenliggende sprite en wijs deze een -1 toe voor de schaal in de X-richting
3. Houd er rekening mee dat het bijwerkingen heeft op alle kindersprites.
4. Reset de schaal naar 1
5. Zorg ervoor dat je de bovenliggende sprite hebt geselecteerd en schakel de optie Flip-X in. Deze rotatie-instellingen zijn een lichtgewicht alternatief dat geen invloed heeft op andere componenten van het GameObject die aan de sprite zijn gekoppeld. Dit maakt het mogelijk om sprites individueel te roteren, ongeacht of ze ouders of kinderen zijn van andere GameObjects.
Sorteer lagen met sprites
Bekijk vervolgens de sorteerlagen en kijk welke voordelen ze u kunnen bieden. De pijnlijke lagen helpen u te organiseren hoe de sprites moeten worden weergegeven. Als je een afbeelding hebt met een lagere sorteerlaag, wordt deze eerst weergegeven, zoals een steen achter de speler om achtergrondobjecten te simuleren. Als aan de steen een hogere sorteerlaag is toegewezen, wordt deze over de spelersavatar heen gelegd en wordt het object op de voorgrond.
1. Kreiere 2 Sorting Layers und benenne die erste, die du erschaffen willst als Achtergrond und die zweite als Vordergrund.
2. Selecteer de eerste sprite en voeg deze toe als een achtergrondsorteerlaag
3. Neem een tweede Sprite en voeg deze toe aan de Vodergrund-sorteerlaag
4. Verplaats beide sprites naar dezelfde positie. U zult zien: De voorgrondlaag zal de achtergrondlaag bedekken
5. Draai de sprites-laag en je zult zien dat de sprites omkeren, welke sprite de andere overlapt.
In tegenstelling tot de set in 3D-games, is er geen concept van diepte in 2D-games. Het is belangrijk om een manier te hebben om prioriteiten in het beeld te definiëren, zodat de illusie van diepte wordt gecreëerd. Om deze reden zijn de sorteerlagen erg belangrijk voor twee subprojecten, omdat ze het mogelijk maken om sprites te definiëren in groepen met prioriteiten. U kunt ook de prioriteit van de overlap instellen, zodat sprites bijvoorbeeld op dezelfde laag bestaan, maar elkaar kunnen overlappen. Als aan de sprite van de speler een hoger belang wordt toegekend dan bijvoorbeeld een steen, wordt de speler naar de voorgrond geduwd. Dit vertelt de renderer dat de player sprite prioriteit heeft.
Het is belangrijk om te begrijpen hoe de sprite-renderer werkt, zodat u deze beter kunt controleren. In uw 2D-projecten kunt u instellen hoe de sprites zich gedragen wanneer ze op het scherm staan. Hoe meer u het gebruikt, hoe gemakkelijker het is om de instellingen te maken die u nodig heeft.
Optimale Einstellungen des Sprite Renderers für ein 2D-Spiel
Bei der Konfiguration des Sprite Renderers für ein 2D-Spiel gibt es einige grundlegende Einstellungen, die du berücksichtigen solltest, um die bestmögliche Darstellung und Leistung zu erreichen. Hier sind die empfohlenen Einstellungen:
- Sprite: Wähle das Sprite aus, das dein GameObject repräsentieren soll. Achte darauf, dass es gut aufgelöst und für dein Spiel geeignet ist.
- Tekenmodus: In den meisten Fällen ist „Simple“ ausreichend. Wenn dein Sprite sich über eine größere Fläche erstrecken soll, ohne verzerrt zu werden, könnten „Sliced“ oder „Tiled“ besser geeignet sein.
- Kleur: Standardmäßig auf Weiß eingestellt, was bedeutet, dass das Sprite in seinen Originalfarben gerendert wird. Du kannst diese Option nutzen, um Farbvariationen zu erstellen, ohne mehrere Sprites zu benötigen.
- Materiaal: Verwende das Standardmaterial, es sei denn, du benötigst spezielle Effekte wie Leuchten oder Schatten.
- Sort Layer & Order in Layer: Diese Einstellungen sind essenziell für die korrekte Anordnung der Sprites. Stelle sicher, dass deine Hintergrundobjekte auf einer niedrigeren Ebene und deine Vordergrundobjekte auf einer höheren Ebene liegen.
- Tik: Nutze diese Einstellung, um dein Sprite zu spiegeln, wenn nötig, z.B. wenn ein Charakter sich nach links oder rechts dreht.
- Masker interactie: Diese Einstellung ist nur relevant, wenn du mit Sprite Masken arbeitest. Ansonsten kannst du sie ignorieren.
- Aanvullende instellingen:
- Pixel Perfect: Aktiviere diese Option für eine schärfere, pixelgenaue Darstellung, besonders nützlich bei Pixel-Art-Spielen.
- Sprite Pivot: Setze den Dreh- und Angelpunkt entsprechend deiner Anforderungen. Bei Charakteren ist das oft am unteren Rand des Sprites, damit sie korrekt auf dem Boden stehen.
- Samendrukking: Achte auf die Einstellung der Sprite-Kompression in den Importeinstellungen. Geringe Kompression kann die Bildqualität verbessern, führt aber zu größeren Dateigrößen.
- Filtermodus: Für Pixel-Art-Spiele ist „Point (no filter)“ oft die beste Wahl, um die klaren Pixelkanten zu bewahren. Für glattere Sprites kann „Bilinear“ oder „Trilinear“ geeigneter sein.
- Anti-Aliasing: Für Spiele mit vielen glatten Kurven und Übergängen kann Anti-Aliasing helfen, Kanten weicher zu machen.
Diese Einstellungen bieten einen guten Ausgangspunkt. Es ist jedoch wichtig, sie an die spezifischen Bedürfnisse und das visuelle Design deines Spiels anzupassen. Experimentieren und Testen sind Schlüssel, um die bestmögliche Darstellung und Leistung zu erreichen.
Meer informatie vindt u in de Unity Manual
Oorspronkelijk gepost 2020-02-04 16:04:04.