Unity vs Unreal Engine XR-kehitykselle: kumpi on parempi?
Jos haluat kehittää XR-sovelluksen yrityksellesi tai henkilökohtaiselle projektillesi, ei ole parempaa aikaa kuin nyt.
nykyään 3D-pelimoottorit, kuten Unity3D ja Unreal Engine, antavat ihmisille, joilla ei ole aiempaa VR-kehityskokemusta, mahdollisuuden luoda VR-ratkaisuja alan veteraanien kanssa. Erityisesti kun otetaan huomioon, että voit kokeilla molempia moottoreita ilmaiseksi niin kauan kuin haluat.
markkinaosuus Pelimoottoreilla rakennetuista peleistä Steamissa. Lähde: Reddit
alun perin nämä ohjelmistoalustat rakennettiin kehittämään 3D-videopelejä, mutta koska VR: lle (ja AR: lle) kehittäminen jakaa paljon yhtäläisyyksiä pelin kehitykseen, XR-yhteisöt omaksuivat nämä pelimoottorit.
menestystarinoiden perässä ei tarvitse mennä kauas.
edessä on kuitenkin toinen haaste. Mikä moottori kannattaa valita? Yhtenäisyyttä vai epätodellista? Tai jotain aivan muuta?
on olemassa useita vaihtoehtoja (CryEngine, ApertusVR, Amazonin sumerilainen), mutta on olemassa kaksi moottoria, jotka hallitsevat markkinaosuutta XR kehitysmarkkinoilla: Unity3D ja Unreal Engine 4.
paras osa? Molempia pelimoottoreita voi käyttää ilmaisversiona. Jos et halua jättää sitä jopa kolikonheiton, tämä artikkeli auttaa sinua ymmärtämään, mitkä vahvuudet ja heikkoudet ovat molemmat näistä ratkaisuista.
tässä artikkelissa paljastetaan myös paljon näitä pelimoottoreita ympäröiviä myyttejä, joiden avulla voit valita ennakkoluulottomasti projektillesi parhaiten sopivan. Katsomme virtuaalitodellisuuden kehittäjän linssistä, mutta pelinkehittäjilläkin on siitä jotain irti.
aloitetaan pikakatsauksella jokaisesta.
Unity3D Overview
Unity3D on kehityskone, joka julkaistiin ensimmäisen kerran vuonna 2005. Sittemmin siitä on tullut maailman suosituin 3D-ja 2D-kehitysalusta. Tässä vain muutamia tilastoja:
- 60% AR/VR-sisällöstä ja 50% mobiilipeleistä on tehty Unity3D: llä
- yli 24 miljardia moottorin asennusta viimeisen 12 kuukauden aikana
- tukee 28 alustaa (iOS: ltä & Oculus to Windows Mixed Reality and all in-between)
johtuen sen suuresta suosiosta mobiilialustoilla, on olemassa sitkeä myytti, jonka mukaan Unity3D kelpaa vain mobiiliprojekteihin.
Tämä johtuu lähinnä siitä, että aiemmin Unity3D itse suuntautui voimakkaasti mobiilimarkkinoille erityisesti Applen Appstoren ja Googlen Play-markkinoiden nousun aikana.
todellisuudessa moottori on kehittynyt viime vuosina niin paljon, että nyt se on monitahoinen kehitysalusta, jota voidaan käyttää mihin tahansa monimutkaiseen XR-ratkaisuun.
Myth: Unity on hyvä mobiili VR/AR
Truth: Unity sopii sekä cross platform-ratkaisuihin että monimutkaisiin XR-projekteihin (esimerkiksi koko Audi logistics-ja autokonfiguraattorikoulutus luodaan Unity3D-alustalla). Tai tutustu Circuit Streamin VR-Koulutussimulaation tapaustutkimukseen INVISTASTA.
entäs Unreal Engine?
Unreal Game Engine 4 Overview
Image source
Unreal Enginen historia pelimoottorina ulottuu vuoteen 1998. Sen elinikä se oli lisensoitu kourallinen AAA-studiot otsikot kuten Unreal/Unreal Tournament, ja Deus Ex. Sillä on ollut useita iteraatioita, kuten Unreal Engine 2 & 3.
asiat saivat täyskäännöksen vuonna 2015, kun tämän ubiquitous development Enginen 4.versio julkaistiin ilmaiseksi suurelle yleisölle.
Huomautus: Unreal Engine-moottorilla toimivista tuotteista on 5 prosentin rojaltimaksu, joka tienaa yli 3 000 dollaria kalenterineljännekseltä. Rojalteja ei ole, jos käytät Unreal Engine-pelimoottoria arkkitehtuuriin, auto -, elokuva -, televisio -, lähetys -, live-tapahtumiin, koulutukseen ja simulaatioon tai muihin ei-peliprojekteihin
alla on Unreal Engine 4: n keskeiset tilastot:
- yli 7 miljoonaa käyttäjää suunnittelu-ja yritysyhteisöstä
- yli 15 tuettua alustaa
nykyään sekä indiekehittäjät että suuret studiot voivat käyttää Unreal Engineä erilaisissa projekteissaan, kuten peleissä, koulutusjärjestelmissä ja liiketoimintaratkaisuissa.
johtuen Unreal Enginen alkuperästä, on yleinen käsitys, että Unreal Engine 4 on loistava työkalu vain, kun työskentelet monimutkaisten miljoonien dollarien projektien, erityisesti videopelien parissa.
luettelo UE4: n kanssa kehitetyistä AAA-peleistä, jotka ovat tulossa ulos vuonna 2020. Onko kukaan muu innostunut Final Fantasy VII remake?
vaikka onkin totta, että jotkut suosituista pelinimikkeistä, kuten Fortnite, on rakennettu Unreal Engine 4: n avulla, UE4: n takana oleva Epic games kehittää aktiivisesti mobiilisegmenttiä sekä tukee yhteisöprojekteja Unreal Dev grants-ohjelmansa kautta.
pelissä on myös VR-spesifisiä pelejä, kuten Rocksteady Studiosin Batman: Arkham VR.
myytti: Unreal Engine 4 kelpaa vain AAA-pelisarjoihin
Truth: Unreal Engine 4: ää voi käyttää niin VR / AR -, 2D -, 3D-kuin mobiilikehitykseen.
vuosien saatossa sekä Unity3D että Unreal Engine puuttuivat heikkoihin kohtiinsa, joten jommankumman poimiminen ylitse muiden ei ole yksinkertainen tehtävä.
voidaksemme tehdä sen, puhutaan XR-kehityksen eroista näiden alustojen kanssa useiden linssien läpi.
kummalla moottorilla on paras infrastruktuuri?
jotta näitä kahta moottoria voitaisiin vertailla oikein, on ymmärrettävä, että ero ei ole ainoastaan teknisissä seikoissa (vaikkakin puhumme niistä myös seuraavassa osassa), vaan myös niitä ympäröivässä infrastruktuurissa.
infrastruktuurin tärkeitä tekijöitä ovat omaisuusvarastot, dokumentaatio ja yhteisö.
puhutaan jokaisesta niistä yksityiskohtaisesti.
Omaisuusvarastot
jokaisessa virtuaaliympäristössä on oltava reaalimaailmaa tai kuvitteellista maailmaa esittäviä virtuaaliesineitä.
alla on esimerkki VR-koulutusratkaisusta, joka kehitettiin Callaway Energy Centeriä varten:
voit luoda 3D-resursseja tyhjästä käyttämällä 3D-mallinnusohjelmistoa, kuten Maya, Blender tai 3ds Max, tai voit ostaa varat Assets Storen kautta.
sekä Unitylla että Unreal Enginillä on varallisuusmarkkinat, joilla voi ostaa valmiiksi tehtyjä 3D-malleja, esineitä, ympäristöjä ja niin edelleen.
Unreal Engine Marketplacen tämänhetkinen varallisuus on noin 10 000:
Unity Asset Storessa olevien varojen määrä on viisinkertainen, pelkkien noin 31 000+ 3D-varojen kanssa:
kahden varallisuusmarkkinan välinen ero muuttuu tekijäksi riippuen siitä, mihin projektiin olet menossa varten.
Unreal Engine assets suuntautuu yleensä enemmän valmiisiin pelituotantoihin. Monet niistä olivat aiemmin käytössä AAA-peleissä.
Tämä selittää niiden korkeamman visuaalisen laadun. Näiden varojen joukossa on linnoja, scifi-teknologiaa ja hirviöitä.
Kuvan lähde: UnrealEngine.com
Jos kehität peliä, jossa on relevantti fantasia-tai scifi-asetus, ja huomaat joidenkin UE4: n omaisuuserien sopivan täydellisesti projektiisi, Unreal Engine 4 marketplace voi olla ratkaiseva tekijä.
samaan aikaan, jos kehität VR-sovellusta liiketoimintaan, grafiikka ei ole yhtä tärkeää kuin relevanssi ja iteratiivinen kehittäminen.
koska Unity3D-kaupassa on enemmän omaisuutta mistä valita, on helpompi löytää relevantteja malleja ja nopeasti prototyyppiä liiketoimintaympäristöön ilman että tarvitsee palkata 3D-mallintajia ja luoda virtuaalista rekvisiittaa tyhjästä:
alla on esimerkki suihkumoottorin 3D-mallista, jonka voi löytää Unity Asset ’ s Storesta. Sitä voitaisiin käyttää suihkuhuollon VR-harjoitussimulaatiossa:
Kuvan lähde: 3D-voimavara, joka edustaa sotilassuihkumoottoria
varojen suhteen Unity3D: n kauppa on hyvin kehittynyt. Unreal Engine on kuitenkin saamassa etumatkaa kiinni, ja Epic Games on hiljattain julkaissut Quixel Megascans-paketin, jossa on 10 000 laadukasta materiaaliskannausta Quixelin kirjastosta.
puhutaan näiden moottoreiden dokumentoinnista ja koulutuksesta.
dokumentaatio & koulutus
sekä Unity3D: llä että Unreal Engine 4: llä on laajasti kehitetty dokumentaatio moottoreiden käytöstä ja erityisesti XR: n kehityksestä:
- Unity3D XR documentation
- Unreal Engine XR documentation
mutta todellinen opetusarvo tulee ulkoisesta koulutuksesta.
vaikka on olemassa laatukoulutuksia, joissa opetetaan XR-sovellusten rakentamista sekä Unity3D: lle että Unreal Engine: lle, näiden kurssien määrä on Unityn kehittäjille huomattavasti suurempi.
esimerkiksi Udemyn koulutusalusta tarjoaa noin 2 200 kurssia Unreal Developmentille ja 5 500 Unitylle. Vaikka useimmat näistä kursseista opettavat kehittämään pelejä, perustietoa voidaan käyttää myös muunlaisten sovellusten rakentamiseen.
mitä yritys-ja yrityslähtöisiin kursseihin tulee, ne pyrkivät hyödyntämään Unity3D-ympäristöä sen kehittyneen infrastruktuurin ja uusien kehittäjien alhaisemman sisäänpääsypisteen vuoksi.
voit tutustua XR-kurssin rakenteeseen ja siihen, miten se opettaa valmiiden XR-sovellusten rakentamista lataamalla 10 viikon projektipohjaisen live XR-kehityskoulutuksen oppimäärän.
puhutaan yksityiskohtaisesti Unity3D: n ja Unreal Enginen kehitysyhteisöjen eroista.
Developer ’ s Community
joka vuosi Kehittäjät työntävät rajoja pidemmälle siitä, mikä XR: ssä on mahdollista.
sekä Unity3D että Unreal Engine tekevät parhaansa tarjotakseen kehittäjille asiaankuuluvaa dokumentaatiota ja koulutusmateriaalia, mutta tällä alalla jää väistämättä yksin miettimään, kumman vaihtoehdon valitsee.
bugeja, glitchejä, murskauksia, ratkaisemattomia koodimysteerejä tapahtuu päivittäin. Kuka auttaa sinua ratkaisemaan ne, varsinkin kun olet yksin?
muut kehittäjät.
tässä pelimoottoria ympäröivän yhteisön rooli tulee ensiarvoisen tärkeäksi, varsinkin kehittyvässä XR-teollisuudessa
Unity3D on vapaasti käytettävissä olevana moottorina ollut olemassa pidempään kuin Unreal Engine 4, joten luonnollisesti sen ympärillä on suurempi indie-kehittäjien yhteisö.
esimerkiksi Unreal Enginen foorumilla on 12 000 aihetta C++ – ohjelmoinnista ja 4 600 viestiketjua VR-ja AR-kehityksestä.
Unity3D: n foorumilla on 128 000+ viestiketjua skriptauksesta ja 6 100+ aiheista VR: n kehityksestä. Se tarkoittaa, että jos jokin ongelma ilmenee, on paremmat mahdollisuudet löytää joku, jolla on sama ongelma, joka voi auttaa sinua oppimaan heidän ratkaisunsa.
toinen asia Unreal Engine 4: n yhteisössä on se, että se on jaettu ei-ohjelmoijiin, jotka luovat sovelluksia enimmäkseen visuaalisella skriptausjärjestelmällä nimeltä Blueprints, ja kehittäjiin, jotka tuntevat ja käyttävät C++: aa.
esimerkki Blueprint-pohjaisesta ominaisuudesta
Unreal Engine-yhteisössä on enemmän ei-ohjelmoijia. Näet, että Blueprint-pohjaisten keskustelujen määrä foorumilla on kaksinkertainen C++ – ohjelmointikeskustelujen määrään verrattuna.
Tämä jako tulee ilmeiseksi, koska monet C++: n kehittäjät eivät aktiivisesti käytä piirustuksia kehitysprosessissaan: tämä johtuu siitä, että koodipohjaiset ratkaisut ovat yleensä resurssioptimoidumpia ja joustavampia kuin Blueprint-pohjaiset.
näin ollen asiantuntevat C++-kehittäjät eivät välttämättä pysty auttamaan muita kuin ohjelmoijia vain siksi, että he eivät puhu samaa kieltä.
päinvastoin, jokainen Unity3D — Kehittäjä osaa C# – ensisijaisen kehityskielensä, joten kokeneet kehittäjät voivat helposti näyttää aloitteleville kehittäjille köydet. Sitä opetamme myös XR Development for Unity-kurssilla alusta alkaen.
puhutaan kehitysprosessin eroista yksityiskohtaisesti seuraavassa jaksossa.
kehitysprosessissa
molemmilla moottoreilla on paljon yhtäläisyyksiä XR-sovellusten kehittämisessä. Kuitenkin, on olemassa suuria eroja sekä ja puhumme niistä tässä osiossa.
C# vs C++ ja Blueprints Vertailu
ehkä suurin ero näiden kahden moottorin välillä on se, että ne hyödyntävät eri ohjelmointikieliä.
vaikka Unity3D: llä voi käyttää useita ohjelmointikieliä, Alustan ensisijainen kieli on C#.
Unreal Engine 4 puolestaan antaa kehittäjille mahdollisuuden valita C++ – ohjelmoinnin ja Blueprint visual scripting Systemin välillä.
keskustelut siitä, kumpi kieli, C# tai C++, on parempi, on ollut olemassa iät ja suoraan sanottuna merkityksettömiä.
molemmat kielet sopivat täydellisesti XR: n kehittämiseen, ja kaikki riippuu siitä, kumman kanssa olet mukavampi tai kumman kanssa sinulla on enemmän kokemusta.
c# saattaa kuitenkin olla aloittelevilla hieman helpompi, ja tässä syy.
ensinnäkin C# – koodi on yksinkertaisempi.
otetaan alkeellinen 3D-objekti, kuten kuutio, ja laitetaan se kellumaan ja pyörimään yhtä aikaa:
tässä koodi tähän virallisesta Unreal Engine-dokumentaatiosta:
kelluva tekijä.h// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "GameFramework/Actor.h"
#include "FloatingActor.generated.h"
UCLASS()
class QUICKSTART_API AFloatingActor : public AActor
{
GENERATED_BODY()
public:
// Sets default values for this actor's properties
AFloatingActor();
UPROPERTY(VisibleAnywhere)
UStaticMeshComponent* VisualMesh;
protected:
// Called when the game starts or when spawned
virtual void BeginPlay() override;
public:
// Called every frame
virtual void Tick(float DeltaTime) override;
};
FloatingActor.cpp// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
#include "FloatingActor.h"
// Sets default values
AFloatingActor::AFloatingActor()
{
// Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it.
PrimaryActorTick.bCanEverTick = true;
VisualMesh = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Mesh"));
VisualMesh->SetupAttachment(RootComponent);
static ConstructorHelpers::FObjectFinder<UStaticMesh> CubeVisualAsset(TEXT("/Game/StarterContent/Shapes/Shape_Cube.Shape_Cube"));
if (CubeVisualAsset.Succeeded())
{
VisualMesh->SetStaticMesh(CubeVisualAsset.Object);
VisualMesh->SetRelativeLocation(FVector(0.0f, 0.0f, 0.0f));
}
}
// Called when the game starts or when spawned
void AFloatingActor::BeginPlay()
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class floatingactor : MonoBehaviour
{
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
float delta = Time.deltaTime;
float vertDelta = Mathf.Sin(Time.time + Time.deltaTime) - Mathf.Sin(Time.time);
float rotDelta = Time.deltaTime * 20.0f;
transform.Rotate(0, rotDelta, 0, Space.World);
transform.position = transform.position + new Vector3(0, 0.25f * vertDelta, 0);
}
}
tulos:
Image source
huomaa, että Unreal Engine-esimerkissä on luotava kaksi erillistä tiedostoa, toinen julistusta varten ja toinen määrittelyä varten.
on syytä huomata, että vaikka iso osa koodista syntyy Unreal Engine automaattisesti, se voi tuntua hieman monimutkaiselta, jos olet vasta aloittelemassa kehitystyötä.
samaan aikaan Unreal Engine sisältää Blueprint visual scripting interface-järjestelmän, jonka avulla voi luoda myös monimutkaisia sovelluksia. Se ei vaadi koodaamista, ja työnkulku on solmupohjainen.
virallisesta Unreal Engine 4-dokumentaatiosta
lähes jokainen osio Unreal Engine-dokumentaatiossa on sekä c++ – että Blueprint-esimerkkien tukema.
pohjapiirustusten opettelu on melko helppoa, varsinkin kun ollaan vasta pääsemässä alkuun. Jotta UE4: stä saisi kaiken irti, on kuitenkin suositeltavaa opetella C++: aa ja yhdistää Blueprint-pohjaiset ratkaisut koodiin.
Huomautus: on mukautetun Unity3D plugin, Playmaker, joka mahdollistaa visuaalisen scripting Unity3D samalla tavalla kuin Blueprints UnrealEngine 4.
Toinen C#: n mahdollinen etu on se, että 90% VR / AR: n kehitysyhtiöistä käyttää C#: tä, mikä tarkoittaa pitkälti dokumentoitua koodipohjaa ja suurempaa määrää testattuja ratkaisuja kehitysyhteisössä.
Alustan lähdekoodin käyttö: Unreal Engine Vs Unity3D
molemmat alustat ovat omavaraisia-niiden tarjoamat työkalut ja työnkulut riittävät enemmän kuin tarpeeksi minkä tahansa tyyppisten XR — sovellusten luomiseen ilman muutoksia alustojen lähdekoodiin.
UE4: n ja Unity3D: n välillä on kuitenkin yksi suuri ero.
Unreal Engine 4 on avoimen lähdekoodin Moottori. Unity3D ei ole.
tämä tarkoittaa, että UE4: n lähdekoodia voi muokata tarpeisiinsa sopivaksi ilmaiseksi. Samalla voi tarkastella Unity3D-lähdekoodia, mutta sen muokkaamiseen tarvitaan enterprise-lisenssi.
vaikka tämä saattaa olla isompien tuotantojen sopimuksen katkaisija, pienempien kehittäjäryhmien tulisi harkita tarkkaan, pitäisikö niiden muuttaa Alustan lähdekoodia lainkaan, muuten yksi pikaratkaisu voi synnyttää bugien vyöryn muualle.
Jos Unity3D: ssä tarvitaan jotain mukautettua toiminnallisuutta, useimmissa tapauksissa asset Storen alustapohjaisten skriptien ja lisäosien pitäisi riittää.
Unity3D-ja Unreal Engine-Grafiikkavertailu
Jos aikamatkustaisimme vuoteen 2012, jolloin Unreal Engine 4 paljastettiin ensimmäisen kerran suurelle yleisölle, grafiikan laatu oli tuolloin ennennäkemätöntä.
siinä missä Unity3D keskittyi lähinnä indie-ja mobiilipelien kehittämiseen, Unreal Engine rakennettiin AAA-pelien tuotantojen luihin.
sittemmin vallalla ollut myytti oli, että jos haluaa fotorealistista grafiikkaa, on käytettävä Unreal Engine 4: ää.
myytti: jos tarvitset upeaa grafiikkaa, käytä Unreal Engine 4: ää
Truth: Sekä Unreal Engine 4 että Unity3D pystyvät luomaan kuvarealistisia kohtauksia ja tarjoavat työkaluja upeiden grafiikoiden luomiseen
tässä vertaillaan grafiikoita näiden kahden alustan välillä:
Tämä sanoi, että Unreal Engine 4: llä on muutamia etuja grafiikkaosastolla.
kaikki Out-of-box Unreal Engine-projektit, mukaan lukien assets, scenes, and tutorial projects, näyttävät paremmilta.
mielenkiintoinen fakta: Unreal Engine 3 sisälsi täysin varustellun linssisoihdutuseditorin, kun taas Unreal Engine 4 käsittelee linssisoihdutuksia puhtaasti jälkikäsittelyefektinä. Unity3D on vielä useita vaihtoehtoja muokata lense vaikutuksia ennen käsittelyä. Vaihtoehtoisesti voit luoda mukautettuja asuntoja UE4 käyttäen materiaalia solmut.
Unity3D: n kanssa saatat tarvita hienosäätöä saadaksesi parhaan hyödyn 3D-resursseistasi.
Advanced shaders, advanced dynamic lightings, PBR materials – Unreal Engine 4: ssä on vain vähemmän työtä alussa kuin Unity3D: ssä.
kuitenkin, jos käytät piirustuksia, monimutkaiset solmujen työnkulut voivat aiheuttaa suorituskykyongelmia.
suuri määrä solmuja, monimutkaista matematiikkaa ja resursseja vaativia operaatiosilmukoita saattaa hidastaa asioita verrattuna optimoituun C++-koodiratkaisuun.
alla on esimerkki, joka osoittaa, miten monimutkainen blueprint-järjestelmä vähentää FPS: ää dramaattisesti verrattuna C++ – koodiin. Ero näyttää kuitenkin tasoittuvan, kun monilukuisuus ja nativisointiprosessit ovat käytössä.
C++ – ja Blueprint-ratkaisujen suorituskykyvertailu
Renderöintivertailu: Unreal Engine 4 vs Unity 3D
renderöinti Unreal Engine 4
Unreal Engine on pelimoottori, joka on tehnyt aaltoja videopelialalla yhtenä ensimmäisistä tukemaan DirectX Raytracing (DXR), jonka avulla voit käyttää vain ray jäljitys kulkee, jotka tarvitsevat sitä ja rasterointi niille, jotka eivät. Näin varmistettiin, että sekä renderöinnin laatu että renderöinnin nopeus täyttyvät, mitä jokainen kehittäjä haluaa!
siitä lähtien UE 4 on tehnyt valtavia harppauksia renderöinnin nopeuden ja laadun parantamiseksi jokaisen seuraavan päivityksen myötä.
tuorein vesistö Unreal Engine 4: ssä.26 on varmasti luoda minkä tahansa vesimuodostuman voit ajatella, pienistä lammista valtavia valtameriä.
viimeisin päivitys Unreal Engine 4: ään esitteli myös uuden cinematic cloud-järjestelmän. Perinteisillä skydome-tekstuuriin perustuvilla menetelmillä pilvet näyttäytyivät usein litteinä ja heikkolaatuisina, kun niitä katsottiin antennin näkökulmasta tai alhaalta. Tämä ei enää päde UE4: n tilavuusvaloihin, sillä ne ovat laadukkaampia ja kestävät kaikissa katselukulmissa.
Uusi volumetrinen Pilvikomponentti suunniteltiin tukemaan vuorovaikutusta Unreal Enginen Taivaanvalokomponentin ja kahden aurinkoa ja kuuta edustavan suuntaavan valon kanssa.
Unreal Engine 4.26 on julkaistu myös erilaisilla parannuksilla videon renderöintijonoon, kuten hallitummalla lopullisella renderöintilähdöllä, kameran liikevektoreilla, Z-syvyydellä ja muilla. Apple Pro-ja Avid NxHR-koodekkeihin hiljattain lisätty tuki edistää myös korkealaatuista mediavientiä.
Unreal Enginen seuraava iteraatio paljastetaan loppuvuodesta 2021. Unreal Engine 5: ssä on huippuluokan heijastusjärjestelmä, täysin dynaaminen globaali valaistus ja ambisonics-renderointi.
renderöinti Unity 3D: ssä
Unity tarjoaa kaksi renderöintitekniikkaa eli ”polkuja.”Jos haluat aloittaa projektin oikealla jalalla, päätökset on tehtävä aikaisin siitä, mitä polkua käytetään: eteenpäin renderöinti (oletus) tai lykätty renderöinti.
eteenpäin renderöinti on erinomainen vaihtoehto niille, jotka haluavat työskennellä läpinäkyvyyden ja mukautettujen varjostusmallien kanssa. Jos pelin valolukuja pystyy hallitsemaan, eteenpäin renderöinti voi olla nopea ratkaisu.
(Source)
lykätyllä renderöinnillä lykkäämme valoinformaation varjostusta ja sekoittumista siihen asti, kunnes ensin ohitetaan näyttö, jossa jokaisen pinnan paikat, normaalit ja materiaalit renderöidään ”geometrian puskuriksi” (G-puskuriksi) sarjana näytön ja avaruuden tekstuureja. Laskennallinen renderointi on tehokas tekniikka, mutta se vaatii huippuluokan laitteistoa parhaan suorituskyvyn tarjoamiseksi. Sitä ei myöskään tueta joissakin mobiililaitteissa.
Ok, cool. Mutta entä kuvallinen realistisuus?
vuosien aktiivisen kehityksen jälkeen realismin ja taiteellisen ilmaisun rajojen työntäminen on nyt hyvin Unityn käsikirjoitetun Renderointiputken ulottuvilla. Unityn uusin Universal Render Pipeline (URP) ja High Definition render Pipeline (Hdrp) rakentavat mukaansatempaavampaa grafiikkaa mukaansatempaaviin digitaalisiin kokemuksiin realistisista materiaaleista elokuvallisiin valaistusefekteihin.
uusin HDRP 10-päivitys sisältää parempia työkaluja debug-valaistuksen helpottamiseksi, kun taas Uusi syvyystila tuottaa kauniita, korkealaatuisia kuvia polkujäljitetyllä defocus-sumennuksella.
URP tarjoaa taiteilijaystävällisiä työnkulkuja optimoidun grafiikan luomiseen eri alustoille yhdellä klikkauksella. Sen hienostunut näytön tila ympäristön Okkluusiojärjestelmä lähentää kirkkautta tai pimeyttä pinnan perustuu ympäröiviin pintoihin ja kuinka alttiina se on ympäristön valaistus. Näin voit parantaa ympäristön valaistuksen visuaalista laatua kohtauksissasi tekemällä esineiden varjoista realistisempia kuin koskaan ennen.
Fun act: molemmat moottorit tekevät aktiivisesti yhteistyötä ulkoisten 3D-studioiden kanssa varmistaakseen 3D-formaattien sujuvan siirtymisen moottoriin. Esimerkiksi sekä Unity3D että UE4 tukevat Pixarin kehittämää Universal Scene Description (USD) – muotoa, joka tukee omaisuusputkistoja ja mahdollistaa tiimien työskentelyn hyödykeviitteiden ja ohitusten avulla.
kaiken kaikkiaan, muista, että voit aina saavuttaa samat tulokset Unity3D: llä ja tässä vaiheessa molemmat alustat ovat viimeisteltyjä niin pitkälle, ettei niiden tuottaman visuaalisen laadun välillä ole näkyvää eroa, jättäen valinnan oman mieltymyksesi varaan.
Unreal Engine 4: n ja Unity3D: n kanssa tehtyjä merkittäviä projekteja
molempia moottoreita on käytetty runsaasti AAA-tuotannossa ja indie-pelien kehittämisessä, ja viime vuosien tunnetuimmat pelit on tehty molempia alustoja käyttäen.
viime vuosina tapahtui kuitenkin dramaattinen käänne, ja molempia alustoja hyödynnetään nyt viihdeteollisuuden lisäksi käytännöllisempiin ja liiketoimintalähtöisempiin ratkaisuihin.
XR-teknologian kehityksen vuoksi yritykset, koulutuskeskukset ja valmistavat yritykset käyttävät laajasti XR-sovelluksia parantaakseen työnkulkuaan ja voittojaan lukemattomilla tavoilla.
XR-projektit, jotka perustuvat Unreal Engine 4: ään
esimerkiksi lääkekehitysyhtiö C4X Discovery käyttää Unreal Engine 4: ää visualisoimaan molekyylidataa ja siten nopeuttamaan uusien lääkkeiden kehitystä.
monimutkaisten tietojen visualisointi VR: ssä antoi tutkijoille mahdollisuuden tarkkailla yhdisteitä uudesta näkökulmasta, havaita helpommin suunnitteluvirheet ja tehdä myös tehokkaasti yhteistyötä eri puolilla maailmaa ilman tarvetta olla samassa huoneessa.
monimutkaisten tietojen visualisoinnilla VR: ssä on monia sovelluksia. Toinen esimerkki on Air Canada, joka käytti Unreal Engine luoda VR esitys heidän top flight business class palvelu.
on syytä huomata, että 97% projektista tehtiin piirustuksilla, ei koodaamalla. Syynä on se, että esityspainotteiset VR-projektit on helpompi vetää kuin XR-koulutus, koska se vaatii monimutkaisempaa vuorovaikutusta kuin pelkkä jonkin havainnointi.
puhutaan joistakin XR-projekteista, joita huomattavat yritykset käyttävät mullistaakseen koulutus-ja operaatiotyövirtansa.
XR-projektit perustuvat Unity3D
Audi, saksalainen autojätti, kehitti modulaarisen VR-koulutuksen, jossa on 20 eri ohjelmaa useilla kielillä parantaakseen logistiikka -, huolto-ja tuotantokoulutuksen työnkulkuja.
Kuvan lähde: audi-mediacenter.com
VR-koulutus on Audin mukaan erittäin suosittua työnantajien keskuudessa ja parantaa oppimisprosessia, työntekijöiden motivaatiota ja harjoittelijoiden kunnianhimoa.
INVISTA, globaali yhdysvaltalainen polymeeri-ja kemianteollisuuden välituotteita valmistava yritys, käyttää Unity3D-pohjaista XR-ratkaisua simuloidakseen työympäristöä ja kouluttaakseen VR: n työntekijöitä, lyhentäen koulutusaikaa, säästäen raaka-ainekustannuksia ja vähentäen käyttökatkoksia.
Boeing, GE, Yhdysvaltain laivasto käyttää VR / AR-sovelluksia, jotka perustuvat Unity3D: hen, kouluttaakseen henkilökuntaa entistä tehokkaammin.
kuitenkin yritykset käyttävät Unity3D: tä myös edustustarkoituksiin. Katsokaa tätä BMW 2019 showcase ja yrittää arvata, mikä on renderöity ja mikä on todellinen:
YouTube-linkki
Yhteenveto
viime vuosina molemmat moottorit ovat kehittyneet harppauksin, puuttuen heikkoihin kohtiinsa ja seuraten sinnikkäästi alan viimeisimpiä trendejä.
se oli ennen Unity3D mobiiliprojekteissa ja Unreal Engine AAA-peleissä, mutta asiat ovat muuttuneet niin paljon sen jälkeen.
molemmat alustat sopivat täydellisesti niin monimutkaisten XR-ratkaisujen kuin indie-projektien luomiseen. Molemmat alustat pystyvät luomaan upeita grafiikoita ja cross-platform sovelluksia.
vaikka Unity3D tukee useampaa alustaa ja on tunnettu monialustaisesta kehitystyöstään, molemmat moottorit on optimoitu toimimaan kaikkien viimeaikaisten markkinoilla olevien XR-teknologioiden kanssa. Monet kehittäjät väittävät Unity on hyvä valinta, koska helppokäyttöisyys.
kaikki riippuu aiemmasta kokemuksestasi ja ympäristöstäsi, jossa työskentelet.
Onko sinulla paljon kokemusta C++ – ohjelmoinnista? Unreal Engine on oikea tie.
kuitenkin, jos olet vasta aloittelemassa kehittäjänä, Unityn C# saattaa olla käytännöllisempi kieli aloittelijoille, koska sillä on suurempi yhteisö ja VR-koodebaasi ympärillä.
Jos sovelluksesi keskittyy vahvasti esittämiseen ja grafiikkaan, esimerkiksi työpöytäpeliin, jossa on AAA-omaisuus tai visuaalinen esitys liike-elämälle, niin mahdollisesti Unreal Engine 4 Blueprints-järjestelmineen ja loistavine visuaalisine efekteineen on tapa edetä.
toisaalta, jos työskentelet monimutkaisen liiketoimintaratkaisun parissa, joka vaatii paljon räätälöintiä, iteratiivista kehittämistä, prototyyppien laatimista ja optimointia, Unity3D-ympäristön oppiminen voi olla hyvä vaihtoehto.
tutki molemmat alustat huolellisesti, ymmärrä mikä toimii sinulle paremmin ja muista, että voit kokeilla molempia alustoja ilmaiseksi.
onnea projekteihin!
Leave a Reply