{"id":53,"date":"2021-02-28T12:45:46","date_gmt":"2021-02-28T12:45:46","guid":{"rendered":"http:\/\/cgmodelviewer.com\/?page_id=53"},"modified":"2024-07-16T04:44:43","modified_gmt":"2024-07-16T04:44:43","slug":"help","status":"publish","type":"page","link":"http:\/\/cgmodelviewer.com\/?page_id=53","title":{"rendered":"Help"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Narrated videos<\/h2>\n\n\n\n<p>Videos walking the viewer through longer app sessions and demonstrating workarounds and non-obvious app capabilities<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Use ARCore &#8220;Streetscape&#8221; building\/terrain geometry<\/h2>\n\n\n\n<p>&#8220;Streetscape&#8221; 3D data may be used to attach (&#8220;anchor&#8221;) 3D models to local buildings.  <\/p>\n\n\n\n<p>A note of trivia: after Streetscape 3D data has been loaded, AR may be toggled off and the Streetscape terrain and building data can be explored using the trackball interface like any other 3D model; by reducing master opacity to zero in the &#8220;FX&#8221; panel, the currently loaded 3D model can be hidden so only the Streetscape buildings are visible.<\/p>\n\n\n\n<p>What isn&#8217;t shown in the demo video is the technique of attaching a 3D model to a building, then turning Streetscape off (to hide the buildings).  The anchor should persist and the object will remain attached, but without the distraction of the Streetscape crude 3D model representations in the AR scene.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"cgmv android app demo: ARCore &quot;Streetscape&quot; terrain\/building geometry\" width=\"525\" height=\"295\" src=\"https:\/\/www.youtube.com\/embed\/AFunKuuHckY?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Turn on bundled textures not used internally by 3D model<\/h2>\n\n\n\n<p>Using the free <a href=\"https:\/\/github.com\/minami110\/usd-polyhaven\/tree\/main\/horse_statue_01\" target=\"_blank\" rel=\"noreferrer noopener\">Polyhaven &#8220;horse statue&#8221; model<\/a> (.usda format and bundled with .exr textures), some basics are demonstrated:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>fix &#8220;inside out&#8221; model<\/li>\n\n\n\n<li>assign 3 textures<br>\u25e6 diffuse<br>\u25e6 normal<br>\u25e6 lightmap<\/li>\n\n\n\n<li>flip UVs<\/li>\n\n\n\n<li>reduce light intensity<\/li>\n\n\n\n<li>toggle normal map<\/li>\n\n\n\n<li>adjust light map<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"cgmv tutorial: set textures for polyhaven &quot;horse statue&quot; model\" width=\"525\" height=\"295\" src=\"https:\/\/www.youtube.com\/embed\/_2p4YDXocfA?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">Polyhaven &#8220;Horse statue&#8221; tutorial: fix inside-out model, set textures, adjust lighting, toggle normals, flip UVs<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Add cubemap  for skybox, reflection map and refraction map<\/h2>\n\n\n\n<p>Explore the possibilities of cubemaps for use as skyboxes and reflection and refraction environment maps.  Skyboxes liven up the background with a 360 degree photo panorama, while your 3D model can be turned into a chrome plated mirror, or a glass object, by adding and adjusting reflection and refraction.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"cgmv android app tutorial: How to use &quot;cubemaps&quot; for background, reflection and refraction effects\" width=\"525\" height=\"295\" src=\"https:\/\/www.youtube.com\/embed\/DvLffQWUIWA?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">Cubemap tutorial: add cubemap and demonstrate use for reflections\/refractions<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Apply textures using materials menu in the right hand drawer<\/h2>\n\n\n\n<p>Free <a href=\"https:\/\/free3d.io\/?a=download&amp;id=6f26630c#gsc.tab=0\" target=\"_blank\" rel=\"noreferrer noopener\">Helicopter N200214<\/a> model<\/p>\n\n\n\n<p>It&#8217;s always frustrating to find a detailed 3D model with bundled textures, but finding the model never made use of those textures internally! In this video we load a helicopter model and apply diffuse and specular textures to improve the look.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"cgmv android app tutorial: Apply bundled textures to helicopter model which is untextured by default\" width=\"525\" height=\"295\" src=\"https:\/\/www.youtube.com\/embed\/TG-SdlnWV8Q?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">Texture tutorial: Show how to assign textures when 3D model has no textures assigned<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Fix common rendering problems by adjusting the OpenGL near\/far clip planes<\/h2>\n\n\n\n<p>(Note: any model will work for following this tutorial; the blue pickup truck model was offered as a free download several years ago from a 3D model site, but sadly not available any longer)<\/p>\n\n\n\n<p>If you see a model &#8220;scintillate&#8221; when zooming in and out, it&#8217;s likely that surfaces near each other are &#8220;fighting&#8221; to be in front, and the situation rapidly reverses back and forth during the zoom. The cause is likely that the distance between the near and far OpenGL clip planes is too large; typically by moving the near plane further away from the camera, the problem goes away. It&#8217;s usually good to move the far plane as close to the camera as possible; as long as the extremities of the model don&#8217;t extend beyond the far clip plane, there&#8217;s no benefit to having it further out than it needs to be. Likewise, adjust the near plane so that when you&#8217;re zoomed in as close as you want to approach the model, the plane is just in front of the model; by keeping the near and far clipping planes as close together as possible, the scintillation artifacts shouldn&#8217;t be too much of a bother.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"How to adjust the OpenGL clip planes\" width=\"525\" height=\"295\" src=\"https:\/\/www.youtube.com\/embed\/vHcgXx1ro-4?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">Clip planes tutorial: show how to adjust near\/far clip planes to improve rendering<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Right hand drawer controls<\/h3>\n\n\n\n<p>After fresh app install, add a demo model and demonstrate how to<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>show\/hide meshes<\/li>\n\n\n\n<li>replace diffuse texture with another, in this case use the &#8220;red&#8221; theme<\/li>\n\n\n\n<li>show how to try out different combinations of load flags to check the effect<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"CGMV app right-hand drawer demo with &quot;dwarf&quot; model\" width=\"525\" height=\"295\" src=\"https:\/\/www.youtube.com\/embed\/sTkjO0LpxlQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">Texture tutorial: replace texture and observe the resulting different appearance<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Wraith walkthrough<\/h3>\n\n\n\n<p>Download the free &#8220;Wraith&#8221; model <a href=\"https:\/\/www.cgtrader.com\/free-3d-models\/character\/woman\/wraith-cyber-ninja-apex-legends\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a> (select &#8220;gltf.zip&#8221; and use the &#8220;wraith animated&#8221; model file)<\/p>\n\n\n\n<p>Demonstrate<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>trick to get animation playing<\/li>\n\n\n\n<li>flipping UVs<\/li>\n\n\n\n<li>browsing and enhancing textures<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"cgmv android app tutorial: &quot;Wraith&quot; animated character with embedded textures\" width=\"525\" height=\"295\" src=\"https:\/\/www.youtube.com\/embed\/Fx6Uh9ZAqk4?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">&#8220;Wraith&#8221; walkthrough<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Silent videos<\/h2>\n\n\n\n<p>Silent (no narration) videos demonstrating specific features<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Adjust model orientation in AR<\/h3>\n\n\n\n<p>Download the free Apollo 11 Command Module 3D model <a href=\"https:\/\/3d.si.edu\/object\/3d\/command-module-apollo-11:d8c6457e-4ebc-11ea-b77f-2e728ce88125\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a><\/p>\n\n\n\n<p>So you&#8217;re viewing your model in AR but when attached to detected plane the model is flat on its face (looking at you &#8220;brainstem&#8221;) &#8212; what to do?<\/p>\n\n\n\n<p>Simple: just open the AR controls, select an axis and degrees to rotate (optionally tick the &#8220;negative&#8221; checkbox) and hit the &#8220;Go&#8221; button.  That&#8217;s it!  If you accidentally get to a weird angle, just hit the &#8220;Reset&#8221; button and try again.<\/p>\n\n\n\n<p>Here&#8217;s the Apollo 11 Command Module at Suitengu Shrine, demonstrating rotation about the Y axis in 10 degree increments.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Pretransform 3D models for better AR\" width=\"525\" height=\"295\" src=\"https:\/\/www.youtube.com\/embed\/N7LM_a9oPLM?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">(silent, no audio) Transform tutorial: rotate model in AR to control which aspect viewer sees<\/figcaption><\/figure>\n\n\n\n<p>Once the orientation has been set it will be applied on subsequent app launches, but can be reset to default at any time.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Viewing models in AR<\/h3>\n\n\n\n<p>Just open the &#8220;AR&#8221; tab and tick the &#8220;Use AR&#8221; checkbox (also temporarily tick the &#8220;planes&#8221; chekbox).  Smoothly wave the camera around until planes are detected, then simply tap to place the currently loaded model.  Use the &#8220;scale&#8221; spinner to adjust model size, and the &#8220;Pre-transform&#8221; controls to rotate the model so it makes sense in the scene.<\/p>\n\n\n\n<p>Here&#8217;s an Osprey preflight near Hie Shrine.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"View model in AR\" width=\"525\" height=\"295\" src=\"https:\/\/www.youtube.com\/embed\/iV5mYoK1SvM?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">(silent, no audio) &#8220;Preflight walkaround&#8221; demo: place large aircraft model in AR and move around<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Normal map control<\/h3>\n\n\n\n<p>Free &#8220;Damaged Helmet&#8221; 3D model can be downloaded <a href=\"https:\/\/github.com\/KhronosGroup\/glTF-Sample-Assets\/tree\/main\/Models\/DamagedHelmet\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a><\/p>\n\n\n\n<p>If a model has normal maps, the level can be controlled via slider on &#8220;FX&#8221; panel<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Normal map control\" width=\"525\" height=\"295\" src=\"https:\/\/www.youtube.com\/embed\/Ft5dPxNtt6M?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">(silent, no audio) Demonstrate normal map adjustment<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Light (occlusion) map control<\/h3>\n\n\n\n<p>Free &#8220;Damaged Helmet&#8221; 3D model can be downloaded <a href=\"https:\/\/github.com\/KhronosGroup\/glTF-Sample-Assets\/tree\/main\/Models\/DamagedHelmet\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a><\/p>\n\n\n\n<p>If a model contains light (occlusion) maps, the level can be controlled via slider on &#8220;FX&#8221; panel.<\/p>\n\n\n\n<p>NOTE: light maps are DISABLED by default; the reason is that some models have incorrect light maps that if applied turn the model completely black.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Light (occlusion) map control\" width=\"525\" height=\"295\" src=\"https:\/\/www.youtube.com\/embed\/QaC3WblkA4E?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">(silent, no audio) Demonstrate occlusion (aka &#8220;light&#8221;) map adjustment<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Control emissive maps<\/h3>\n\n\n\n<p>Free &#8220;Damaged Helmet&#8221; 3D model can be downloaded <a href=\"https:\/\/github.com\/KhronosGroup\/glTF-Sample-Assets\/tree\/main\/Models\/DamagedHelmet\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a><\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Emissive map control\" width=\"525\" height=\"295\" src=\"https:\/\/www.youtube.com\/embed\/iKfzYhIbW80?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">(silent, no audio) Demonstrate emissive map adjustment<\/figcaption><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Narrated videos Videos walking the viewer through longer app sessions and demonstrating workarounds and non-obvious app capabilities Use ARCore &#8220;Streetscape&#8221; building\/terrain geometry &#8220;Streetscape&#8221; 3D data may be used to attach (&#8220;anchor&#8221;) 3D models to local buildings. A note of trivia: after Streetscape 3D data has been loaded, AR may be toggled off and the Streetscape &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/cgmodelviewer.com\/?page_id=53\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Help&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-53","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/cgmodelviewer.com\/index.php?rest_route=\/wp\/v2\/pages\/53","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/cgmodelviewer.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/cgmodelviewer.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/cgmodelviewer.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/cgmodelviewer.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=53"}],"version-history":[{"count":31,"href":"http:\/\/cgmodelviewer.com\/index.php?rest_route=\/wp\/v2\/pages\/53\/revisions"}],"predecessor-version":[{"id":174,"href":"http:\/\/cgmodelviewer.com\/index.php?rest_route=\/wp\/v2\/pages\/53\/revisions\/174"}],"wp:attachment":[{"href":"http:\/\/cgmodelviewer.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=53"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}