Sådan opbygges en AR App

Feb 2, 2026
hvordan

I løbet af de sidste to år har der været en eksplosion i interesse omkring VR og AR teknologi. Den seneste store ting i eksperimentelt design , AR er også ankommet på nettet, men med denne nye teknologi kommer nye færdigheder, og det føles nu som det vilde vesten uden store standarder at følge.

Evnen til at vise 3D på nettet er ikke noget nyt, men hvis du har undgået det, så skal du hoppe ind i teknologier som Three.js eller A-Frame (tag et kig på vores Roundup af Ar værktøjer til at prøve for en komplet liste).

Uanset hvilket færdighedsniveau du er på, vil det ikke gøre meget forskel, hvis du ikke har noget anstændigt indhold. Tænk på passende brugssager for AR, før du hopper ind. I denne artikel vil vi vise dig, hvordan du opretter en multi-markør AR-oplevelse.

Feel din færdighedsniveau er ikke helt op til det? EN Website Builder. vil skabe et websted for dig uden besværet. Eller hvis du dykker ind med et komplekst websted, skal du få Web Hosting. ret.

Ved at bruge flere markører er det muligt at vise forskellige stadier af en proces eller et unikt indhold baseret på den markør. I dette eksempel vil vores app undersøge vandcyklusen. Gå til side 3 for at lære at oprette en brugerdefineret AR-markør.

01. Kom godt i gang

Åbn Start mappe i din IDE og inde i index.html. Side Find script-tags. Al koden i vejledningen vil gå ind i disse. For at teste appen skal du have en server, og hvis du vil teste på en telefon, skal du være vært for filerne på en HTTPS-server. Tilføj de første variabler i script-tags:

 Var Model1, Model2, Model3, Count = 0,
  partikler, particlecount, particlesystem;
  var loader = ny tre.colladaLoader (); 

02. Læg modellen

scene

Brug ikonet øverst til højre for at forstørre billedet

For at gøre AR-scenen fungerer en model. Du vil se, at den en gang er indlæst, den er gemt i variablen Model1. . Dette skaleres derefter og klones to gange for de tre trin. I stedet for at indlæse tre forskellige modeller, vil alle justeringer til en model ske i kode for at gøre den belastning hurtigt på mobil.

 Loader.load ('Landscape1.dae', funktion (Collada) {
  Model1 = Collada.Scene;
  model1.scale.x = model1.scale.y = model1.scale.z = 0,015;
  model2 = model1.clone ();
  model3 = model1.clone (); 

03. Sæt op tweening

På den første model vil skyen blive fundet i scenen, og dette vil være tweened til en ny position, så skyen stiger ud af havet. Dette er indstillet til at gentage for evigt, og det vil tage otte sekunder for tween at animere og vise en sky-formning.

 Var Cloud1 = Model1.getobjectbyname ("Cloud", TRUE);
  Cloud1 = Cloud1.Children 
; New Tween.Tween (Cloud1.Position) .TO ({ X: 0, Y: 30, Z: -15 }, 8000) .Repeat (uendelig). Areasing (Tween.easing.quadratic.Inout) .Start ();

04. skala det op

Skyen skaleres ned for at være næsten usynlig. En anden tween er tilføjet til skyen, og denne skalerer skyen op til den normale størrelse. Med bevægelsen og skaleringen vil den give illusionen om, at skyen stiger og danner ud af havet som det første skridt i vandcyklusens proces.

 cloud1.scale.x = cloud1.scale.y = cloud1.scale.z = 0,0;
  New Tween.Tween (Cloud1.Scale) .to ({
  X: 1,
  Y: 1,
  Z: 1
  }, 8000). Reteat (uendelig).
  

05. Sæt den anden sky

the water cycle scene

En anden sky vil sidde over bjerget

Den næste sky fra den anden model skal placeres, hvor den første sky afsluttede sin animation som en formet sky i himlen. Dette gives en tweened bevægelse til at placere sig over jorden, stiger lidt over bjerget. Dette vil tage 12 sekunder at animere, da det er et større træk.

 Var Cloud2 = Model2.getobjectbyname ("Cloud", TRUE);
  Cloud2 = Cloud2.Children 
; cloud2.position.set (0, 30, -15); New Tween.Tween (Cloud2.Position) .TO ({ X: 0, Y: 50, Z: -145. }, 12000) .Repeat (uendelig).

06. Gør det regn

Nøglen til at gøre dette illusion arbejde gør det muligt for skyen at regne. Vandcyklusen har cloud regnen, da den bevæger sig højere over land. For at få effekten vil et partikelsystem blive brugt. Her skabes mængden af ​​partikler og partikelmaterialet ved anvendelse af et regnfald billede.

 Var textureloader = ny tre.TexturEloader ();
particlecount = 1500;
partikler = ny tre.geometri ();
VAR PMATISmaterial = Nye tre.PointsMaterial ({
  Farve: 0x3a4e5d,
  Størrelse: 0,05,
  Kort: Textureloader.load ("img / rain.png"),
  PhaTest: 0,3,
  Opacitet: 0,9,
  Gennemsigtig: True}); 

07. Opret regndråber

Ved hjælp af en til loop kan 1500 regndråber oprettes med en tilfældig X, Y, Z-position, der vil være mellem skyen og jorden. Hver regndråbe får sin egen tilfældige hastighed for at få regnen til at se mere naturligt ud. Partiklen skubbes ind i den korrekte hjørne af geometrien.

 for (var I = 0; i & lt; particlecount; i ++) {
  var px = math.random () * 60 - 30,
  py = math.random () * -10,
  pz = math.random () * 20 - 10;
  var partikel = ny tre.vector3 (PX, PY, PZ);
  partikel.velocity = ny tre.vector3 (0, - (math.random () * 0,9), 0);
  particles.vertices.push (partikel); } 

08. Arbejde på partikelsystemet

Nu er partikelsystemet skabt ud af geometrien og materialet. Partiklerne er indstillet til at blive sorteret, så z-ordren er korrekt, og derefter laves regnpartiklerne et barn i den anden sky. Hvor som helst skyen er tweened, følger regnen også, så det er ikke nødvendigt at animere regnen efter skyen!

 particlesystem = nye tre. Points (partikler, pmateriale);
particlesystem.sortpartikler = sandt;
cloud2.add (particlesystem); 

09. Indstil de endelige modelpositioner

I den endelige model bliver skyen omplaceret til slutningen af ​​den anden sky animationscyklus. Denne nye sky kommer bare til at sidde i himlen og ikke animere. I stedet kommer floden til at animere, så flodmodellen er gemt i en variabel, klar til at tilføje tween til den.

 Var Cloud3 = Model3.getobjectbyname ("Cloud", TRUE);
  Cloud3 = Cloud3.Children 
; cloud3.position.set (0, 50, -145); Var River = Model3.getobjectbyname ("River", TRUE); River = River.Children
;

10. Fyld op ad floden

the water cycle model

Vandniveauer i floden skal stige

I det tredje trin i vandcyklusen løber vandet ud af bakkerne, påfyldning af floder og søer, når det vender tilbage til havet. Dette er den mest subtile bevægelse, da det bare vil medføre at flytte flodens højde, så det ser ud til at fylde op. Alt er forudindlæst nu, så det i det funktion kaldes.

 New Tween.Tween (River.Position) .TO ({
  Y: 3.
  }, 8000). Reteat (uendelig).
  i det();
}); 

Fik designfiler for at gemme? Tjek vores vejledning til Sky lagring .

Næste side: Tilføj AR Funktionalitet og markører

  • 1
  • 2.
  • 3.

Nuværende side: Byg en AR app: trin 01-10


hvordan - Mest populære artikler

Sådan opretter du 3D-scanninger med virkelighedsfangst

hvordan Feb 2, 2026

(Billedkredit: Phil Nolan) Virkelighedsfangst er en fantastisk måde at lave dine egne 3D-scanninger på. Alt du beh�..


Sådan oprettes et lokalt udviklingsmiljø

hvordan Feb 2, 2026

(Billedkredit: fremtiden) Et lokalt udviklingsmiljø giver dig mulighed for at bruge din egen maskine til at køre di..


Arbejde smart med din ZBRUSH UI

hvordan Feb 2, 2026

Alt, der stimulerer vores sind, kan påvirke vores produktivitet, og det er vigtigt at genkende faktorer, der understøtter vores arbejde, hvad enten det er den rigtige form for baggrundsmusi..


Kom i gang med WebVR

hvordan Feb 2, 2026

HOP TIL: WebVR Resources. WebVR er et JavaS..


En vejledning til Googles webværktøjer

hvordan Feb 2, 2026

Side 1 af 5: Se og skift HTML, CSS & AMP; Js. Se og skift HTML, CSS &..


6 måder at fremskynde din modellering

hvordan Feb 2, 2026

En mere effektiv arbejdsgang er den indlysende fordel ved at forbedre din Speed ​​Sculpting Technique, men det er ikke den en..


Mal et furry pet portræt

hvordan Feb 2, 2026

Vores færdige kat portræt Maleri kæledyr og tegne dyr kan være meget sjovt. Mens det er dej..


Top tips til at skulpturere en væsen i zbrush

hvordan Feb 2, 2026

At demonstrere bygning en skabning i zbrush bruger jeg dette stykke af 3D Art. Jeg arbejder på, designet af ..


Kategorier