Where can I find the highlighting system scripts & shaders?

Visuel Magt til Mobile Spil: Highlighting & OmniShade

29/09/2025

Rating: 4.98 (16326 votes)

I en verden, hvor mobilspil konstant presser grænserne for visuel kvalitet, står udviklere over for den dobbelte udfordring at levere imponerende grafik uden at ofre den afgørende ydeevne. Især på flagskibsenheder som iPhones og andre avancerede smartphones er spillernes forventninger til en fængslende visuel oplevelse tårnhøje. Heldigvis tilbyder Unity Asset Store en række kraftfulde værktøjer, der kan hjælpe med at løse netop denne udfordring. Denne artikel dykker ned i to sådanne aktiver: Highlighting System og OmniShade, og hvordan de kan løfte dine mobilspils visuelle udtryk til nye højder, sikrende at dine kreationer skinner på tværs af et bredt spektrum af enheder.

Is omnishade a good shader?
OmniShade is a highly performant shader designed for mobile devices. It is packed with a multitude of techniques allowing it to achieve almost any look from realistic to toon to anime, yet also blazingly fast due to an adaptive system of calculating only what it needs to for any feature set.

At skabe spil med høj visuel kvalitet, der kører flydende på mobile enheder, kræver ofte en dyb forståelse af optimering og avancerede grafik-teknikker. Highlighting System og OmniShade er designet til at forenkle denne proces, hvilket giver udviklere mulighed for at fokusere mere på kreativitet og mindre på tekniske begrænsninger. Disse værktøjer er ikke blot add-ons; de er grundlæggende byggesten for at realisere komplekse visuelle ideer, der tidligere var forbeholdt desktop- eller konsolplatforme.

Indholdsfortegnelse

Highlighting System: Fremhæv dine objekter med stil

Highlighting System 5.0 er et robust Unity-pakke, der gør det muligt at integrere en iøjnefaldende omridsglød-effekt til objektfremhævning i dit Unity-projekt. Dette system er utrolig alsidigt og fungerer på alle større platforme, hvor Image Effects understøttes, hvilket gør det ideelt til mobilspil. Efter installationen af pakken finder du alle de nødvendige scripts og shaders i mappen Plugins\HighlightingSystem, alle organiseret under navnerummet HighlightingSystem for nem adgang.

Grundlæggende integration og brug

Den grundlæggende integration er ligetil. Du skal blot importere Highlighting System-pakken fra Unity Asset Store til dit projekt. Derefter tilføjes komponenten HighlightingRenderer til dit kamera. Placeringen af denne komponent blandt andre Image Effects på kameraet bestemmer, hvornår fremhævelsesbufferen anvendes til den gengivne ramme. For at gøre specifikke GameObject'er fremhævbare, tilføjer du Highlighter-komponenten til dem. Du kan derefter finjustere indstillingerne for Highlighter-komponenterne og HighlightingRenderer for at opnå det ønskede visuelle udtryk. Bemærk, at fremhævelses-presets gemmes direkte i komponenten og kan manipuleres ved runtime via HighlightingRenderer API.

Forskellige fremhævelsesmetoder

Highlighting System tilbyder tre primære fremhævelsesmetoder, rangeret efter prioritet:

  • Hover: Fremhæver et objekt kun for en enkelt ramme, ideel til at reagere på musens placering eller touch-input på mobile enheder.
  • Tween: Nyttig til at henlede opmærksomheden på et specifikt objekt over tid, f.eks. et tutorial-element i spillet. Denne tilstand understøtter farvegradienter for dynamiske effekter.
  • Constant: Bruges til at tænde/slukke konstant fremhævelse på et objekt, f.eks. for at markere alle samleobjekter på skærmen.

Derudover fungerer 'Occluder'-tilstanden, når ingen andre fremhævelsestilstande er aktive, hvilket lader objektet fungere som en fremhævelses-okkluderer, der skjuler fremhævelser bag sig. Dette er særligt nyttigt for hovedkarakteren i et spil.

API og Avancerede Funktioner

Systemet tilbyder en rig API, der giver dig fuld kontrol over fremhævelsesadfærd via scripts. Du kan f.eks. tænde konstant fremhævelse med en specifik farve med highlighter.ConstantOn(Color.red). Det er vigtigt at inkludere using HighlightingSystem; direktivet i dine scripts for at få adgang til API'et. Hvis du ønsker at implementere en fuldstændig brugerdefineret fremhævelseslogik fra bunden, kan du nedarve din klasse fra HighlighterCore.

For optimal ydeevne, især på mobile platforme, kan du justere 'iterations' (uskarphed iterationer) for at forbedre glødkvaliteten, men hold værdien så lav som muligt. På mobile platforme er det også vigtigt at aktivere 'Use 32-bit Display Buffer' under Resolution and Presentation i Unity Player Settings for korrekt rendering.

Where can I find the highlighting system scripts & shaders?
After the package installation, in the Plugins\HighlightingSystem folder you will find all the scripts and shaders required for the Highlighting System to work. All scripts in this folder are in the HighlightingSystem namespace.

OmniShade: En enkelt shader til det hele

OmniShade er en fuldt udstyret, stiliseret shader til Unity, der er specifikt optimeret til mobile enheder. Den er designet til at levere næsten enhver visuel stil – fra realistisk til tegneserie- eller anime-stil – samtidig med at den opretholder en utrolig høj ydeevne. Dette opnås gennem et progressivt system, der kun beregner det, der er nødvendigt for de aktiverede funktioner.

Designet til mobil ydeevne

Hvor Unitys Standard Shader ofte er for tung til mobile enheder, og Shader Graph kan være overvældende for kunstnere, bygger OmniShade bro over dette hul. Den kan ofte levere et bedre visuelt resultat end mange desktop-klasses shaders, takket være dens høje grad af stilisering, kombination og tilpasning. Uanset om dit spil har kompleks belysning eller simple sprites, er ydeevnen altid optimal, hvilket gør OmniShade potentielt den eneste shader, du behøver til hele dit spil.

Omfattende funktionssæt

OmniShade inkluderer et imponerende udvalg af funktioner, der kan kombineres frit med optimal ydeevne:

  • Farvejusteringer og desaturation
  • Diffust blødt lys
  • Spekular-map og hår-highlights
  • Kantlys (Rim light)
  • Reflektion
  • Normal-map
  • Occlusion-map
  • Emissiv-map (selvlysende)
  • Detalje-map
  • Gennemsigtighedsmaske
  • Højdebaserede farver
  • Skygge-overlay
  • Vertex-sway for vegetation (f.eks. blødt svajende græs)
  • Omrids (Outline)
  • Fade med kameraafstand
  • Flad shading
  • Miljøbelysning, tåge og light probes
  • Skygger og skyggefarver
  • Understøttelse af Unitys bage global belysning
  • Fuld adgang til culling- og blend-indstillinger med presets for opake/transparente objekter

Ud over disse visuelle funktioner understøtter OmniShade både Built-In og URP (Universal Render Pipeline) og inkluderer progressivt adaptiv ydeevne, der automatisk genererer den minimale shader-variant for et givet sæt aktiverede funktioner. Den understøtter også optimeret shader stripping for minimal build-størrelse og hukommelsesforbrug, samt en tilpasset fallback-shader til Open GL ES 2, hvilket sikrer, at dit spil ser godt ud, selv på ældre enheder.

Sammenligning og synergi

Mens Highlighting System fokuserer på specifikke fremhævelseseffekter, dækker OmniShade den bredere gengivelse af spillets visuelle elementer. Disse to værktøjer supplerer hinanden perfekt. OmniShade kan håndtere den overordnede stil og belysning af dit spil, mens Highlighting System tilføjer et lag af interaktivitet og vigtighed til individuelle objekter. Sammen giver de en kraftfuld kombination for at skabe visuelt rige og ydeevne-optimerede mobilspil.

EgenskabHighlighting SystemOmniShade
FormålTilføjer omridsglød-effekterOmfattende stiliseret shader
Primær FunktionVisuel fremhævning af objekterGenerel objektgengivelse og stil
YdeevnefokusOptimeret til image effectsProgressiv og adaptiv shader
AnvendelsesområdeInteraktion, tutorials, opmærksomhedAlle visuelle elementer i spillet
KompatibilitetAlle store platforme med Image EffectsMobilenheder, Built-In & URP

Integrationstips for mobiludvikling

For at maksimere fordelene ved disse værktøjer i dine mobilprojekter:

  • Kameraopsætning: Sørg for at HighlightingRenderer er korrekt placeret på kameraet, og at dets rækkefølge blandt andre Image Effects er optimal.
  • Objektopsætning: Anvend Highlighter-komponenten på de GameObjects, du vil fremhæve, og brug SetDirty() metoden, når objektets renderere eller materialer ændres runtime.
  • Gennemsigtige shaders: Hvis du bruger brugerdefinerede gennemsigtige shaders, skal du sikre dig, at de har 'RenderType' shader-tagget sat til 'TransparentCutout' eller 'Transparent', og at de har en '_MainTex' property til at detektere gennemsigtige områder.
  • Anti-aliasing: Undgå hardware anti-aliasing (MSAA) i Unitys kvalitetsindstillinger for mobil, da det kan føre til ydeevneproblemer og rendering-artefakter med Image Effects. Overvej i stedet at bruge et anti-aliasing Image Effect fra Unity Standard Assets.
  • Optimering: Hold 'blur iterations' i Highlighting System så lave som muligt for at balancere kvalitet og ydeevne. OmniShades adaptive natur hjælper med at holde ydeevnen høj, men vær opmærksom på at aktivere kun de funktioner, du reelt har brug for.

Begrænsninger og kendte problemer

Det er vigtigt at være opmærksom på visse begrænsninger, især for Highlighting System, da det er baseret på Image Effects:

  • Fremhævelse i flere lag: Det er ikke muligt at vise fremhævelse af et objekt, der er skjult af et andet fremhævet objekt.
  • Omvendt fremhævelses-okklusion: Selvom det kan implementeres for simple konvekse geometrier, vil komplekse meshes okkludere deres egne dele, hvilket kan give uønskede fremhævelser.
  • Blanding af HighlightingRenderer-indstillinger: Det er ikke muligt at bruge forskellige fremhævelsesindstillinger pr. objekt, da HighlightingRenderer-indstillinger altid anvendes på hele billedet.
  • Hardware Anti-aliasing på iOS: Fremhævelse fungerer muligvis ikke korrekt på iOS-platformen, hvis hardware anti-aliasing er aktiveret, primært på grund af enhedens skærm-DPI og det betydelige ydeevnefald.

Disse begrænsninger er dog ofte en del af den grundlæggende natur af Image Effects i Unity, og de påvirker ikke værktøjernes kernefunktionalitet til de fleste almindelige brugsscenarier.

Ofte Stillede Spørgsmål (FAQ)

Hvad er Highlighting System?
Highlighting System er en Unity-pakke, der giver dig mulighed for nemt at tilføje en omridsglød-effekt for at fremhæve objekter i dine spil. Det er ideelt til at gøre interaktive elementer eller vigtige objekter mere synlige for spilleren.
Hvad gør OmniShade unikt for mobilspil?
OmniShade er en yderst performant og stiliseret shader, der er optimeret til mobile enheder. Dens unikke progressive system beregner kun de nødvendige funktioner, hvilket sikrer fremragende ydeevne, selv med komplekse visuelle effekter, og den kan opnå et bredt spektrum af visuelle stilarter.
Kan jeg bruge disse værktøjer på iPhones og Android-telefoner?
Ja, begge værktøjer er designet med mobilkompatibilitet for øje. Highlighting System fungerer på alle større platforme, der understøtter Image Effects, og OmniShade er specifikt optimeret til mobile enheder, hvilket gør dem perfekte til spil, der målretter iPhones, Android-telefoner og lignende enheder.
Påvirker disse værktøjer spillets ydeevne?
Begge værktøjer er udviklet med fokus på optimering. Highlighting System kræver justering af indstillinger som 'blur iterations' for at balancere kvalitet og ydeevne. OmniShade er adaptivt og genererer minimale shader-varianter, hvilket sikrer, at ydeevnen forbliver optimal for de funktioner, du aktiverer. Korrekt brug og opmærksomhed på optimeringsanbefalinger vil sikre minimal indvirkning på ydeevnen.
Hvor finder jeg scripts og shaders efter installation?
Efter installation af pakken finder du alle de nødvendige scripts og shaders i mappen Plugins\HighlightingSystem i dit Unity-projekt. Eksempelscener og demo-scripts findes i HighlightingSystemDemo-mappen.

Konklusion

At skabe visuelt imponerende mobilspil, der også leverer en flydende spiloplevelse, er en konstant balancegang. Highlighting System og OmniShade repræsenterer kraftfulde løsninger, der giver Unity-udviklere mulighed for at overkomme denne udfordring. Ved at tilbyde effektive måder at skabe iøjnefaldende fremhævelser og en omfattende, ydeevne-optimeret shader, hjælper disse værktøjer med at forvandle dine spil til visuelle mesterværker, der fanger og fastholder spillere på tværs af alle mobile enheder, fra de nyeste iPhones til et bredt udvalg af Android-smartphones. Investeringen i disse aktiver kan spare dig for utallige timer i optimering og give dine spillere en uforglemmelig visuel oplevelse.

Hvis du vil læse andre artikler, der ligner Visuel Magt til Mobile Spil: Highlighting & OmniShade, kan du besøge kategorien Teknologi.

Go up