Daarna heb ik nog eens de particle effecten zitten aanpassen met nieuwe materials en values.
Ze krijgen een random values mee voor de size en rotation zodat de wolken die gegenereerd worden niet altijd hetzelfde uitzien.
Na dit was ik op zich volledig klaar met het project voor ons klant. Het enigste dat gedaan moest worden was voor de IOS build (Apple).
Aan de Android kant was alles af, dus heb ik wat onderzoek gedaan naar de Lightweight Render Pipeline om de performance te optimaliseren voor Unity projecten.
De focus ligt vooral voor lightweight of handheld devices die high definition renders niet aankunnen en waar het ook niet zo belangenrijk is in uw applicatie.
Het is wel handig dat zowel de post processing en dit pipeline beide in de packet manager te verkrijgen zijn.
Uiteindelijk nog meegeholpen om de laatste build nog in orde te krijgen voor de klant. In de Apple versie, kun je een object in het echt scannen om zo een 3D model te creëren op uw device. Het probleem nu, was dat de positie van het 3D model een paar centimeters verkeerd was. We hebben dan een developer build gemaakt waar we de positie konden verplaatsen van het 3D model zodat dit juist reflecteert met de realiteit.
Dag begonnen met het afmaken van de particle effects. Ik moest blijkbaar in plaats van "PS.Stop()", "PS.emission.enabled = false" in de plaats gebruiken enzo.
PS.Stop(), zorgde er gewoon voor dat alles nimeer begon te werken als die eenmaal gecalled was. Ongeveer hetzelfde als een gameobject disablen.
Daarna icoontjes gemaakt voor de applicatie in de huisstijl van de klant. (zie foto, maar dan wel zonder logo en kleur).
En uiteindelijk flow en kleuren verandert van de particles, het was veel te 'flashy'.
Particle effecten updaten, opzoekwerk voor het scripten en alles installeren om ook te kunnen builden via mijn laptop en Android.
Tijdens het scripten heb ik toch wel een goei tijd zitten knoeien met de StateManager om alle particles deftig te laten afspelen wanneer het moet.
Particles wilden niet echt meewerken met .Play() en .Stop(), in de plaats daarvan moest ik "PS.Stop()" weghalen.
Ook problemen voor te builden, ik zat perongeluk alles te editen in een kopie van een prefab met exact dezelfde naam. (Altijd alles dubbel checken)
Dit had als gevolg dat alles werkte in de preview voor Unity, maar niet voor de Android Build. Kzat al te zoeken of de materials die ik gebruikte wel mobile compatible waren.
Vrij korte post voor vandaag. Er was onderweg ook niks speciaals gebeurt dat ik kan vermelden.
Goeie aflevering van Better Call Saul gezien voordat ik ging slapen.
Grootste deel van de dag heb ik zitten experimenteren met particle effects in Unity.
Verrassend genoeg vond ik het leuk om hiermee in te spelen. Tijd ging snel voorbij want je wilt alle functies graag is testen en toepassen op je product.
Voor de rest heb ik vooral GitKraken merge conflicts proberen op te lossen en een AO (Ambient Occlusion) Unity texture gemaakt met Substance Painter voor een model van mijn stagebegeleider.
Daarna wat onderzoek gedaan over particle systems en een paar Youtube tutorials gevolgd om wolken, mist en rook te maken.
Ons stagebegeleider heeft ook een project gedeeld waar al toffe particle effects in zaten om mee te testen.
Er waren ook nog andere coole dingens in zoals cel shading, 2D level design en portals. Zeker iets wat ik kan gebruiken voor in mijn eindwerk.
Rest van de tijd heb ik zitten experimenteren met particle effects en het aanpassen en samenvoegen van verschillende 3D modellen in ons project (via GitKraken).
Daarna ben ik aan de slag gegaan in Photoshop, een paar mock-ups gemaakt en met kleuren zitten spelen zodat het klopt met de huisstijl van de klant. Voor deze blog heb ik het gewoon zwart-wit gelaten en de logo even weggelaten.
Rest van de dag heb ik zitten spenderen aan onderzoek naar het optimaliseren van een 3D model van mijn stage-begeleider.
De uitdaging is om de verschillende materials die het model heeft te veranderen in één texture waar alle data in zit en daar Ambient Occlusion in te stoppen. Het model heeft ook een rig met animatie en de hierarchy moet ook hetzelfde blijven. Hierbij heb ik zitten testen met de bake functie van C4D.
Baken is uiteindelijk gelukt, maar het is erg unoptimized. C4D voegt er automatisch teveel spatie tussen de polygons aan toe en je kunt dit ook niet aanpassen.
Voor dag 4 en 5 heb ik mij zitten bezig houden met een kast te modelen waar het product in het echt in zou zitten.
Het idee is om een grof voorstelling te geven door alles buiten de wireframes transparant te maken. In begin deed ik dit door een uvw te maken en daarop een outline om te gebruiken als texture voor de kast. Het uiteindelijke resultaat zag er niet zo goed uit dus heb ik daarna onderzoek gedaan om dit op een ander manier beter te bereiken.
Vanaf hier beginnen onderzoeken naar de LineRenderer van Unity. De meeste oplossingen die in de buurt kwamen, waren spijtig genoeg niet gratis dus ben ik verder terug gaan kijken naar C4D. Uiteindelijk vond ik een vrij goeie guide en tool voor wireframe materials te genereren:
Er is ook een volumetric wireframe renderer. Deze zorgt er voor dat alle lijnen die gegenereerd worden ook even breed zijn, Dit had ik het liefst willen bereiken, maar spijtig genoeg is het niet gratis. C4D materials/shaders zijn trouwens ook niet exporteerbaar naar Unity, dus heb ik het idee achter deze tool op een ander manier toegepast in Unity.
Gisteren vergeten te vermelden, maar ergens in de dag kregen we een rondleiding door heel het kantoor.
Iedereen was super cool en ik heb een vrij goei idee naar waar wie ik moet mailen als ik met problemen zit.
Vandaag heb ik de poly count van het 3D model kunnen reducen met Simplygon. Van +1M tris naar 80k ofzoiets (4 keer 50%). In begin wou ik dit doen door een Unity plug-in te gebruiken, maar daar kwamen uiteindelijk toch veel problemen bij te pas. Daarna heb ik in het model zelf zitten modelen om een cut-out te maken, zodat je binnen in de model kunt kijken. Zo kan je zien hoe alles ineen steekt. Om het af te maken heb ik nog lege stukken in die cut-out moeten bijvullen zodat dit er realistisch uit ziet (wat veel tijd heeft gekost).
Uiteindelijk om de dag af te sluiten heb ik het model in Unity kunnen krijgen, met textures en al zodat mijn collega's hier mee kunnen experimenteren. Morgen ga ik proberen te helpen met animeren. Maar als dat niet nodig is, ga ik waarschijnlijk zo'n transparant kast maken waar dit product normaal in het echt in zit.
All in all, vrij drukke dag vandaag. Ik ben niet zeker of dit voor vrijdag wel af gaat geraken in 8 uur, maar ik hoop van wel.
Vanaf vandaag worden we elke dag om 8u30 verwacht bij ons stage-bedrijf.
M.a.w om 6 uur opstaan en voor 7 uur buiten. Op zich heeft dit zijn voor en nadelen:
Het is extra koud, maar aan de andere kant is het ook veel minder druk op straat en in de bus.
Misschien off-topic, maar onderweg op straat zag ik twee politie autos parkeren voor de Basic Fit.
Op zich is dit wel een keigoei uur om ongestoord te trainen, maar nog geen minuut later hoorde ik ineens de brandalarm afgaan en vollenbak drama.
Op de stage plek hebben we met de groep meer zitten brainstormen en ook onze eerste mock-ups gemaakt.
Voor 3D heb ik even zitten klungelen met Simplygon om de polygonen te reduceren. Ik kreeg halverwegen een tip om da beter te doen wanneer de textures al af waren, dus ben ik ineens met dat begonnen.
De rest van de dag heb ik dus zitten painten in substance painter en proberen de textures te importeren in c4d.
Helaas pindakaas, gingen veel van de details in de textures verloren door het eerst in c4d te doen, dan als fbx te exporteren en vervolgens in Unity te importeren.
Nu dat ik thuis ben, heb ik een paar tutorials verder gevolgt om het gewoon rechtstreeks van substance painter naar Unity te exporteren, wat ook handig zal zijn voor in de toekomst.
Ik was voor de eerste dag al 40 minuten te vroeg. Ik wou alvast voor de eerste dag niet te laat komen, maar ik geef toe dat dit eer een beetje over was. Tom, onze stagebegeleider, heeft alles nog is kort uitgelegd wat er van ons verwacht wordt. Hij liet een paar projecten en use cases zien die we konden gebruiken als voorbeeld en inspiratie.
Grootste deel van de dag was vooral programmas installeren, brainstormen en taken verdelen.
Voor de eerste week moeten we een nieuw product in AR kunnen projecteren en er mee kunnen interacten.
Ik ga mij hier vooral focusen op het 3D gedeelte en user interface met Photoshop enzo.
We kregen al een 3D stl model voorgeschoteld, maar bij nader inzien is het niet echt optimized. Te high-poly, onbenoemde onderdelen, geen unwrap, geen materials.
Dus allereerst ga ik proberen om de polygonen van dit model te verkleinen en dan te texturen. Ik heb er nu al onderzoek over gedaan (polygon reduction met simplygon), maar het effectief afmaken is hopelijk een taak voor morgen.