<!DOCTYPE html>
<html lang="en">
<head>
<title>Argos.Vu Verge3D Web Interactive</title>
<meta charset="windows-1252">
<meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
<!-- Search Engines -->
<meta name="description" content="The Terrence Howard Project">
<!-- Twitter -->
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="Argos.Vu Web Interactive">
<meta name="twitter:description" content="Verge 3D">
<meta name="twitter:image:src" content="https://argos.vu/V3D/ArgosVuMirror.png">
<!-- Open Graph -->
<meta property="og:title" content="Argos.Vu Web Interactive">
<meta property="og:description" content="Verge 3D">
<meta property="og:image" content="https://argos.vu/V3D/ArgosVuMirror.png">
<meta property="og:type" content="website">
<meta name="generator" content="Verge3D 2.10.0">
<!-- favicons -->
<link rel="apple-touch-icon" sizes="180x180" href="media/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="media/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="media/favicon-16x16.png">
<link rel="manifest" href="media/manifest.json">
<link rel="mask-icon" href="media/safari-pinned-tab.svg" color="#5bbad5">
<meta name="theme-color" content="#ffffff">
<!-- WebXR origin trial -->
<meta http-equiv="origin-trial" content="Aop1aS3O0LG/MKmDbfhMRdlXGxB1ETrJJScdLSaYLDCMJI5iOLQ0uwhBObewdZKbpu00Y+9f7YC5tALasZ7BOg0AAABoeyJvcmlnaW4iOiJodHRwczovL3NvZnQ4c29mdC5jb206NDQzIiwiZmVhdHVyZSI6IldlYlhSRGV2aWNlTTY5IiwiZXhwaXJ5IjoxNTUxODMwMzk5LCJpc1N1YmRvbWFpbiI6dHJ1ZX0=">
<script src="v3d.js"></script>
<script src="All_Shape_Prints_001.js"></script>
<link rel="stylesheet" type="text/css" href="All_Shape_Prints_001.css">
</head>
<body>
<div id="container"></div>
<div id="info"><a href="https://www.soft8soft.com/verge3d" target="_blank" rel="noopener">Verge3D</a> - mirror
</div>
<script src="../build/v3d.js"></script>
<script src="js/objects/Reflector.js"></script>
<script src="js/controls/OrbitControls.js"></script>
<script>
// scene size
var WIDTH = window.innerWidth;
var HEIGHT = window.innerHeight;
// camera
var VIEW_ANGLE = 45;
var ASPECT = WIDTH / HEIGHT;
var NEAR = 1;
var FAR = 500;
var camera, scene, renderer;
var cameraControls;
var sphereGroup, smallSphere;
init();
animate();
function init() {
var container = document.getElementById('container');
// renderer
renderer = new v3d.WebGLRenderer({ antialias: true });
renderer.setPixelRatio(window.devicePixelRatio);
renderer.setSize(WIDTH, HEIGHT);
container.appendChild(renderer.domElement);
// scene
scene = new v3d.Scene();
// camera
camera = new v3d.PerspectiveCamera(VIEW_ANGLE, ASPECT, NEAR, FAR);
camera.position.set(0, 75, 160);
cameraControls = new v3d.OrbitControls(camera, renderer.domElement);
cameraControls.target.set(0, 40, 0);
cameraControls.maxDistance = 400;
cameraControls.minDistance = 10;
cameraControls.update();
//
var planeGeo = new v3d.PlaneBufferGeometry(100.1, 100.1);
// reflectors/mirrors
var geometry = new v3d.CircleBufferGeometry(40, 64);
var groundMirror = new v3d.Reflector(geometry, {
clipBias: 0.003,
textureWidth: WIDTH * window.devicePixelRatio,
textureHeight: HEIGHT * window.devicePixelRatio,
color: 0x777777,
recursion: 1
});
groundMirror.position.y = 0.5;
groundMirror.rotateX(- Math.PI / 2);
scene.add(groundMirror);
var geometry = new v3d.PlaneBufferGeometry(100, 100);
var verticalMirror = new v3d.Reflector(geometry, {
clipBias: 0.003,
textureWidth: WIDTH * window.devicePixelRatio,
textureHeight: HEIGHT * window.devicePixelRatio,
color: 0x889999,
recursion: 1
});
verticalMirror.position.y = 50;
verticalMirror.position.z = - 50;
scene.add(verticalMirror);
sphereGroup = new v3d.Object3D();
scene.add(sphereGroup);
var geometry = new v3d.CylinderBufferGeometry(0.1, 15 * Math.cos(Math.PI / 180 * 30), 0.1, 24, 1);
var material = new v3d.MeshPhongMaterial({ color: 0xffffff, emissive: 0x444444 });
var sphereCap = new v3d.Mesh(geometry, material);
sphereCap.position.y = - 15 * Math.sin(Math.PI / 180 * 30) - 0.05;
sphereCap.rotateX(- Math.PI);
var geometry = new v3d.SphereBufferGeometry(15, 24, 24, Math.PI / 2, Math.PI * 2, 0, Math.PI / 180 * 120);
var halfSphere = new v3d.Mesh(geometry, material);
halfSphere.add(sphereCap);
halfSphere.rotateX(- Math.PI / 180 * 135);
halfSphere.rotateZ(- Math.PI / 180 * 20);
halfSphere.position.y = 7.5 + 15 * Math.sin(Math.PI / 180 * 30);
sphereGroup.add(halfSphere);
var geometry = new v3d.IcosahedronBufferGeometry(5, 0);
var material = new v3d.MeshPhongMaterial({ color: 0xffffff, emissive: 0x333333, flatShading: true });
smallSphere = new v3d.Mesh(geometry, material);
scene.add(smallSphere);
// walls
var planeTop = new v3d.Mesh(planeGeo, new v3d.MeshPhongMaterial({ color: 0xffffff }));
planeTop.position.y = 100;
planeTop.rotateX(Math.PI / 2);
scene.add(planeTop);
var planeBottom = new v3d.Mesh(planeGeo, new v3d.MeshPhongMaterial({ color: 0xffffff }));
planeBottom.rotateX(- Math.PI / 2);
scene.add(planeBottom);
var planeFront = new v3d.Mesh(planeGeo, new v3d.MeshPhongMaterial({ color: 0x7f7fff }));
planeFront.position.z = 50;
planeFront.position.y = 50;
planeFront.rotateY(Math.PI);
scene.add(planeFront);
var planeRight = new v3d.Mesh(planeGeo, new v3d.MeshPhongMaterial({ color: 0x00ff00 }));
planeRight.position.x = 50;
planeRight.position.y = 50;
planeRight.rotateY(- Math.PI / 2);
scene.add(planeRight);
var planeLeft = new v3d.Mesh(planeGeo, new v3d.MeshPhongMaterial({ color: 0xff0000 }));
planeLeft.position.x = - 50;
planeLeft.position.y = 50;
planeLeft.rotateY(Math.PI / 2);
scene.add(planeLeft);
// lights
var mainLight = new v3d.PointLight(0xcccccc, 1.5, 250);
mainLight.position.y = 60;
scene.add(mainLight);
var greenLight = new v3d.PointLight(0x00ff00, 0.25, 1000);
greenLight.position.set(550, 50, 0);
scene.add(greenLight);
var redLight = new v3d.PointLight(0xff0000, 0.25, 1000);
redLight.position.set(- 550, 50, 0);
scene.add(redLight);
var blueLight = new v3d.PointLight(0x7f7fff, 0.25, 1000);
blueLight.position.set(0, 50, 550);
scene.add(blueLight);
}
function animate() {
requestAnimationFrame(animate);
var timer = Date.now() * 0.01;
sphereGroup.rotation.y -= 0.002;
smallSphere.position.set(
Math.cos(timer * 0.1) * 30,
Math.abs(Math.cos(timer * 0.2)) * 20 + 5,
Math.sin(timer * 0.1) * 30
);
smallSphere.rotation.y = (Math.PI / 2) - timer * 0.1;
smallSphere.rotation.z = timer * 0.8;
renderer.render(scene, camera);
}
</script>
</body>
</html>
- A Detailed Look at Oculus Utilities for Unity
- about
- argos.vu
- contact us
- DevNotes – Archive – 3-15-17 Back
- Electric Tours Dinosaur Colorado
- Free Form Deformation
- Funding Research
- Gallery_One
- harmonic resonance
- Jim’esque Simulation Details
- PitchDeck
- Plasma Dynamics
- points of interest
- Raw Materials
- Rudolph Steiner
- TetraWaveForm
- Volo Meeting 12-11-2018
- VRARA
- WEBFLOW TEMPLATES
- development videos
- development notes
- argosSphere nav table
- devNotes 3-16-16 hex map seam
- devNotes 3-21-16 cursor & hex addressing
- devNotes 3-22-16 cursor & hex addressing
- devNotes 3-23-16 cursor design
- devNotes 3-24-16 cursor design
- devNotes 3-25-16 paint_track – paintList_track – movement recording
- devNotes 3-26-16 unoShader unlit – unity online conference
- devNotes 3-27-16 path recording – spline continuity and net spawning
- devNotes 3-28-16 networking – NetworkTransform – Player Objects – NetworkBehaviour
- devNotes 3-29-16 networking – Setting up a Multiplayer Project
- devNotes 3-30-16 networking – Parenting netCamera – netCamMove code
- devNotes 3-31-16 networking remote client
- devNotes 4-01-16 networking remote testing
- devNotes 4-02-16 networking netMove states – Cmd from client
- devNotes 4-03-16 networking – front end UI – prepare for testing
- devNotes 4-04-16 minApp – targeting & timed performance – as list
- devNotes 4-05-16 pcg utilities – quad spawning – tween – elastic
- devNotes 4-06-16 elastic slerp – quaternion tweens overshoot
- devNotes 4-07-16 slerpspergsburg unclamped
- devNotes 4-08-16 adb – code for ui netManager – 3rd geometry layer
- devNotes 4-09-16 circle lattice packing
- devNotes 4-10-16 goldberg polyhedra construction and addressing
- devNotes 4-11-2016 ico-sphere projection mapping – audio sample
- devNotes 4-12-16 Spherical Mapping – Audio Xurious
- devNotes 4-13-16 quaternion mesh tile matching
- devNotes 4-14-16 tile matching and scaling – multum in parvo
- devNotes 4-15-16 triangle grading – Voronoi cells and Delaunay triangulation
- devNotes 4-16-16 instancing tethered masses with radial repelling forces
- devNotes 4-17-16 triangle center quality – point in given cell
- devNotes 4-18-16 triangle center quality – projections to/from the uv plane
- devNotes 4-19-16 tcq – unit testing – 2D rotator
- devNotes 4-20-16 tcq – unit testing continued
- devNotes 4-21-16 tcq implementation – hex mapping and indexing
- devNotes 4-22-16 hex generation using subdivision
- devNotes 4-23-16 hex alignment and placement
- devNotes 4-24-16 build hexagons from veronoi positions
- devNotes 4-25-16 voronoi position list and data structure
- devNotes 4-26-16 fibonacci voronoi position list nb direction ordering
- devNotes 4-27-16 fibonacci nodes – triangulation and meshing
- devNotes 4-28-16 ArgosFibonacci.cs – quad cells – indexing and tweening
- devNotes 4-29-16 ArgosFibonacci.cs – iTween Callbacks
- devNotes 4-30-16 ArgosFibonacci.cs – iTween driven quaternion lerp
- devNotes 5-01-16 fibo Begin the Beguine
- devNotes 5-02-16 foriero – sequencer
- devNotes 5-03-16 midi specs, delegates and events
- devNotes 5-04-16 midi events – animations – procrustean
- devNotes 5-05-16 video project 1
- devNotes 5-07-16 icosahedral projection
- devNotes 5-07-16 phasor on icoplane
- devNotes 5-08-16 dotProduct gatherings
- devNotes 5-09-16 events, vizEls and spinerettes
- devNotes 5-10-16 patterns, particle system internals, crossfades
- devNotes 5-11-16 path follow, koreographer & theme
- devNotes 5-12-16 scrubber, event editing and composition
- devNotes 5-13-16 timing, events and tweening
- devNotes 5-14-16 navigation, particles and time tweens
- devNotes 5-15-16 particles, instantiation, fibRider and tweening
- devNotes 5-16-16 timed tweens, visual flow and particle dynamics
- devNotes 5-17-16 particle system positioning, world space and ps threading
- devNotes 5-18-16 detail, precision, focus, rigor in the vigor
- devNotes 5-19-16 three tier workflow – particle system foundry
- devNotes 5-20-16 lines, fills and fibonacci
- devNotes 5-21-16 code review, app design and sound painting
- devNotes 5-22-16 topologies, voronoi baking
- devNotes 5-23-16 sound visualization, particle system instances, pivot rotations
- devNotes 5-24-16 Argos Brush, List performance, subFrame tweens
- devNotes 5-25-2016 GPU instancing, audio echo, list processing
- devNotes 5-26-16 quad pool, object reuse, memory management
- devNotes 5-27-16 sound processing, alignment and generation
- devNotes 5-28-16 sound generation, audio processing, harmonizer
- devNotes 5-29-16 Mic input, processing and recording
- devNotes 5-30-16 onFilterRead, windowing and FFTs
- devNotes 5-31-16 fundamental lock, voice tracking, harmonizing
- devNotes 6-01-16 Vuforia 5.5 base, gearVR and performance evaluation
- devNotes 6-02-16 AR sample, ARM performance and debug
- devNotes 6-03-16 native vuforia app structure, dev UI, look and feel
- devNotes 6-04-16 orientation, navigation, gyro, compass raw vector
- devNotes 6-05-16 android UI, handheld AR, Argos VU
- devNotes 6-06-16 GearVR pipeline, micInput, audio compression
- devNotes 6-07-16 audio latency, GearVR ui and mobile testing
- devNotes 6-08-16 texture writing, echo buffer performance, multi tracking
- devNotes 6-09-16 GearVR UI, Argos Sphere Indexing, AR UI Interactions
- devNotes 6-10-16 CLJ AR/VR composition, refinement, integrity
- devNotes 6-11-16 GearVR interface, parameter adjustment settings file, movement
- devNotes 6-12-16 VR lab, sound and partSys interfaces
- devNotes 6-13-16 echo interface, argos meshDraft levels, vertical processing
- devNotes 6-14-16 echo editor ui, argos mesh draft, phi
- devNotes 6-15-16 Sound Plot, Circular buffer, Echo Processing
- devNotes 6-16-16 pipeline back to vr, movement, sphere cursor
- devNotes 6-17-16 GearVR UI work, user movement and navigation
- devNotes 6-18-16 UI GearVR, devPipeline, radial menus
- devNotes 6-19-16 navigation into sphere, HUD, user experience
- devNotes 6-20-16 modal menu cycling, scroll plate, tap tap tap
- devNotes 6-21-16 json, scriptable objects, trackable movement, timing and placement
- devNotes 6-22-16 cursor swap, tool selection, editor functions
- devNotes 6-23-16 AR-VR transitions, singleton manager, ui modal dialog
- devNotes 6-24-16 OVR cursor canvas interaction – transitions – triggers
- devNotes 6-25-16 ioc – amvcc or application-model-view-controller-component
- devNotes 6-26-16 fsm mvc ui Trygve Reenskaug
- devNotes 6-27-16 mvc structure ui interaction
- devNotes 6-28-16 cursor ui interaction – sphere gaze intersection – cursor state
- devNotes 6-29-16 navigation UI state cursor follow
- devNotes 6/30/16 GearVR testing navigation sphere cursor states
- devNotes 7-01-16 sphere interaction cursor states voronoi
- devNotes 7-02-16 navigation OVR Camera rig movement
- devNotes 7-03-16 ui interaction navigation message processing
- devNotes 7-04-16 accordion 3d button selector – movement – sound follow
- devNotes 7-05-16 utility ui, survey, tools, json
- devNotes 7-06-16 MVC hierarchy, persistent storage, reload preferences
- devNotes 7-07-16 galaxy 7 usb debug – performance – initial tests
- devNotes 7-08-16 adb debug workflow
- dj ar initial
- cursor work
- The EU
- phi five alpha omega
- art forms in nature
- packings
- rendering pipeline and shaders
- manuals
- music
- news
- tango devNotes