Journal activities are explicitly and clearly related to course deliverables- 5
Most of my journal entries in the beginning few weeks of class was tailored towards familiarizing myself with the class, VR setup, and the Meta Quest. I have stated, albeit sometime more briefly than other times, the work I have performed, which was mainly completing homework and starting on my first project this week.
deliverables are described and attributed in wiki- 3
I have identified which deliverables to do- I will have a wiki page on "Applications of VR", in a section dedicated to "Perception of sense of scale and distance", which is the main premise of my first project. I will include my user survey results, as well as my own findings of how utilizing a 3D visualization space helps users visualize hard-to-grasp object scales better. Otherwise, I aim to do a separate wiki page on either "VR visualization software" or "VR modeling software", under the Unity section, focusing more on the multi layered approach of using multiple environments and seamlessly traversing through them. I am more uncertain on the final design/contents of this second wiki page, so I gave myself a 3 for this criteria.
report states total amount of time -5
total time is appropriate -5
I am on pace, and the number of hours will only start increasing from now as I start progressing in my projects.
Project description: Use Unity to build a VR environment where users can seamlessly compare extremely small and extremely large objects (e.g., molecules, cells, humans, buildings, planets) to study how VR affects intuition about scale compared to 2D representations.
The proposed project clearly identifies deliverable additions to our VR Software Wiki-5- aiming to expand on Unity capabilities and add onto techniques to enable seamless transition between multiple layers/environments
Involves passthrough or “augmented” in VR-5- aims to start users within the classroom, showing scales of objects
The proposed project involves large scientific data visualization along the lines of the "Scientific Data" wiki page and identifies the specific data type and software that it will use-5- using Unity and Blender if necessary to build objects- technique used is multi-scale layered environment rendering
The proposed project has a realistic schedule with explicit and measurable milestones at least each week and mostly every class-5- attainable goals, so far meeting timeline
The proposed project explicitly evaluates VR software, preferably in comparison to related software-5- project is aimed to compare VR adn 2D visualization on its capabilities of showing a sense of scale
The proposed project includes an in-class activity, which can be formative (early in the project) or evaluative (later in the project)- 5- includes an in class survey evaluating visualization techniques between VR and 2D visualization
The proposed project has resources available with sufficient documentation- 5- lots of documentation on Unity and layered environments
Project: Use Unity to build a VR environment where users can seamlessly compare extremely small and extremely large objects (e.g., molecules, cells, humans, buildings, planets) to study how VR affects intuition about scale compared to 2D representations.
Plan:
2/10: Find software to build 3D models and allow users to magnify/shrink environment by multiple factors of ten
2/12: Find equivalent website that showcases this in a 2D level
2/19: Start developing the 3D visualization, and start thinking of survey questions for activity participants
2/24: Finalize survey; work on finding ways to overlay classroom objects onto the visual
2/26: Continue finishing up the visualization; maybe add a ruler app to showcase the size of objects in quantifiable measures
3/03: I am aiming to provide an in-class activity around this time, once the visual is done, and aim to ask a survey of how the 2D-3D visuals help users grasp scales of objects
3/05: Work on wiki tab on software usage and visualization of large scale objects using VR
Shown on top of journal
Project 1: Find and download real-scale objects and build software that lets users render objects of varying magnitudes. Insert a ruler/sizer that allows users to calculate length/size of objects present within the clasroom, then comparing those sizes with other objects in the visualization. Conduct surveys asking if users can mentally grasp large/small sizes better after the visualization, which also ties in with the class activity. A few sample deliverables can indlue a tutorial on the rendering software used, or a study with user accounts on how much better humans can perceive size using VR.
Project 2: Find papers/2D interactive maps that show glacier loss data. At the same time, find softwares that can show glacier loss on a globe, as well as a separate scaled cube of water that represents the volume of melted ice. Also, outline the parts of the map that has submerged due to seawater rise. Users can interact with this map to infer the progression of glacier loss and its effects on seawater rise. The main deliverable for this project can be a detail on using arcgis to make interactive maps, as well as overlaying simulations over the 3D map.
Project 3: Find simulations that best show the 3D magnetic field projected on a 2D monitor. Develop user interactive virtual magnets that users can move around, to see the magnetic field shifts. This project can allow users to manipulate the magnetic objects within their simulations and see real time shifts of the magnetic field. There can also be a collaborative aspect, as long as the simulation can be connected real time with other users that are simulateously experiencing the project. The main deliverable for this project can be the visualization of physics and simulating physics movements in a VR space.
before after
---- ----
1 | 3 | Goal 1: articulate AR/VR visualization software tool goals, requirements, and capabilities
1 | 3 | Goal 2: construct meaningful evaluation strategies for software libraries, frameworks, and applications; strategies include surveys, interviews, comparative use, case studies, and web research
3 | 4 | Goal 3: execute tool evaluation strategies
2 | 4 | Goal 4: build visualization software packages
3 | 4 | Goal 5: comparatively analyze software tools based on evaluation
1 | 3 | Goal 6: be familiar with a number of AR/VR software tools and hardware
3 | 4 | Goal 7: think critically about software
4 | 5 | Goal 8: communicate ideas more clearly
1 | 3 | Goal 9: grow a habit of routinely journaling my work
Proposal 1- Use Unity to build a VR environment where users can seamlessly compare extremely small and extremely large objects (e.g., molecules, cells, humans, buildings, planets) to study how VR affects intuition about scale compared to 2D representations. This directly addresses a human's limitation of perceiving objects outside the scope of everyday objects. Can also use blender to render these objects.
Proposal 2- Create a VR visualization that maps glacier loss within the arctic circle so users can intuitively grasp magnitude and rate of change. Similarly to proposal 1, can use Unity as the main VR rendering software.
Proposal 3- Visualizing invisible physical fields, such as magnetic fields, as users can interact with it using virtual magnets. This allows us to visualize fields in 3D space, which gives a comparable information advantage compared to traditional 2D simulations. I can use Paraview for vector field processing.
Project 1 Proposal <ADD LINK>
Presentation for Project 1 Proposal <ADD LINK>
End Presentation for Project 1 <ADD LINK>
Project 2 Proposal <ADD LINK>
Presentation for Project 2 Proposal <ADD LINK>
Poster <ADD LINK>
In-class Activity <ADD LINK>
Public Demo <ADD LINK>
Homework 1 Assignment:
10 minute changes:
Link SideQuest download page/guide to Immersion Analytics Installation and Setup page
Add link to ShapesXR within the VR Modeling Software page
Remove 2021 VR@Brown page link, as it currently shows a 404 not found error
1 hour changes:
Review and add more papers on the related VR research page
Add additional applications of VR in economics- particularly on the visualization of hard to comprehend macroeconomics trends
Add/populate new 2025 student research page within the VR Research page
10 hour changes:
Write up reflection on main VR visualization tool used for one of two main projects
Write up a page on the comparison of the two main VR tools used for the two main projects
Add section on the use of vr software to visualize monte carlo simulation
CONTRIBUTION 1 [Added link to SideQuest download in Immersion Analytics Installation and Setup page
CONTRIBUTION 2 [Added wiki page of VR in perception- making a vr in grasping a sense of scale] <ADD LINK>
.....
CONTRIBUTION N [short description] <ADD LINK>
Total: 63 hours
1/25/26 - 2 Hours
Finishing up homework 1 content
1/25/26 - 3 Hours
Reading papers on collaborative AR
1/28/26 - 1 Hours
Set up Meta quest and explored basic functionalities
1/28/26 - 2 Hours
Finished journal entries for homework 2
2/2/26 - 2 Hours
Finished previous lab (ShapesXR) and all necessary setups for tomorrow's class
2/2/26 - 2 Hours
Finished journal entries for homework 3
2/4/26 - 2 Hours
Finished journal entries for 2/5 homework; starting finding 2D websites that most closely resemble the work I am aiming to compare to
2/9/26 - 6 Hours
Finished journal entries for 2/10 homework; solidified software and techniques used for project, started reading related documents to get used to multi-layered environments. Finished visualizing the 3D environment and started compiling a list of objects and their relative sizes. Finished working on short presentation of my project deliverable.
2/10/26 - 4 Hours
Finished journal entries for 2/12 homework; as I did the journal self reflection I realized I should include more in my journal entries so I intend to explain my contents of work in more detail here. This journal will also be treated as an intermediary notes page for me to log the progress of my projects, as well as keep any relevant pieces of information for me to come back later.
I was able to find a 2D webstie that does exactly what I'm looking for: https://htwins.net/scale2/#google_vignette. This seems to be the most updated version of this website, and it scales the entire universe, from the smallest measurable length, Planck length, to the size of the observable universe. Because of the limited time, I tend to do a smaller range of objects, from an Angstrom of length(10^-10m) to around the size of a galaxy. The individual environments will likely show objects 100x in relative magnitude. For example, the first environment will be overlayered using AR onto the classroom and will have objects ranging from 0.1-10m.
For the zoom technique, I will make it so that the user themselves change in size, so the relative pieces of objects will be fixed. This might make the user interaction limited.
2/16/26 - 6 Hours
I downloaded all necessary Unity components and spent a good few hours getting familiar with the tools necessary for the project. I will now detail the processes, in case I wish to write more about these steps in my wiki pages later.
The setup process was as follows:
First, I installed Unity 6 LTS with Android build support and configured the project specifically for connection with the meta quest headsets. This required:
Switching the build target to Android(previously defaulted to mac)
Enabling OpenXR under XR Plug-in Management
Activating Meta Quest support within OpenXR
Enabling the Oculus Touch controller interaction profile
This ensures the project can compile into an APK that runs natively on the headset. I am hoping that the APK can be run in any headset, as long as they have access to it.
Next, I installed steps so that the scene itself can be simulated and run on the headset.
I installed and configured the XR Interaction Toolkit and added:
XR Origin (VR)
XR Interaction Manager
XR Interaction Simulator (for in-editor testing)
Since the headset developer mode was unavailable, I set up the XR Interaction Simulator to emulate headset and controller behavior directly inside Unity. This allows me to develop and test movement and interaction without deploying to hardware.
Lastly, I implemented a rudimentary zoom feature that changes the scene's size itself. it is a logarithmic scale, which is crucial because human perception of scale is closer to logarithmic than linear.
Thus, at this point:
The XR environment runs in simulation
The world can dynamically scale up and down
Core architecture for multi-scale visualization is in place
2/18/26 - 2 hours
Finished setup for class tomorrow, and tried a bit of the Paraview activity beforehand just to be familiar with the controls. I also finished the full scope of the actual project I will make; I realized while starting my visualization of the project that because I am so unfamiliar with Unity, getting the environments set up and able to connect to headsets will be the biggest issue. Now, I have decided to shrink the range of my visualization greatly, in exchange for a cleaner project. I will also spend more time in the wiki contributions on the sense of scale/perception using VR and the survey itself as well, as I will put more emphasis on these parts more than the visualization now.
2/22/26- 5 hours
I started working again on the VR simulation, and started working on gathering content for the wiki page contribution. I have decided that the best wiki contribution will include how VR can help our understanding of a sense of scale. I think the best part is that I have already done research on human depth/size perception, and already know that humans are great at measuring sizes that we can perceive in the real world, but this breaks down quickly once we get to scales that we are not used to. I plan on adding adequate background information on this to support my reasoning behind why I wanted to do this visualization as my first project. Still, the main issue is that I am unsure how I will use this unity simulation and connect it to the meta quest headsets and distribute them. If the project seems to be taking too much time, I wish to ask for a later presentation time.
2/25/26- 5 hours
I have finished making a preliminary, short survey to distribute to the classmates post simulation presentation. I wish to add the results of this survey onto the wiki page. I will also have started making the wiki page itself right after this journal entry. I plan on finishing up on the journal after the presentation, but I will have finished adding all adequate background material by the end of today.
Due to time costraints, I have further changed the details of my project- now, I aim to show 3-5 different panels of objects of sizes that are within 1000x of each other's size- for example, in one panel, I will see the size difference of the planets of the solar system. This way, I still try and use the VR visualization for scale perception, but I can finish up the project in time. I will now create transitions between environments that don't seamlessly connect with each other, but I hope to polish up the current visualizations so relative sizes can still be perceived easily.
2/27- 7 hours
I have spent today working on the setup of the environment and getting a general sense of the visualization mechanics. Like mentioned earlier, I aim to fixate the "human" or the viewer in a set location(0,0,0 on the virtual world) and zoom in and out the other objects dynamically. I initially tried to use a movement option by using the arrow keys(which would later be translated into the left controller's joystick), but the problem was the player will move a fixed distance per second no matter the zoom- thus, if one zooms in too much, the movement becomes too fast and when one zooms out too much, the movements becomes nonexistent. I tried creating a dynamic movement script, but then this broke the perspective script and had to scratch this. Another problem is that I wish to add dynamic text boxes that show the size of the object, but it is hard to have the text boxes within a location of the object as the camera dynamically shifts focus to an object based on the zoom level. To fix this, I attached a child canvas object and a text box child onto said canvas object to lock in a floating text box next to each object.
3/01- 6 hours
So far, the environment is done, and the current scale of the objects range from Mount Everest(right under 1e4 m) to an ant(5e-3m). This is roughly a magnitude of 10^6-10^7 times- this sounds large, but contain a lot of objects that aren't really difficult to perceive with the human eye/mind. The main problem is with the overlap of objects when the relative sizes are too similar(within 1 order of magnitude/10x in size)- since the current zoom feature dynamically moves the focus of the camera to the object that is most fit for the zoom amount, if there are two objects that both satisfy this requirement then they show up overlapped. For instance, the human and the elephant are recorded to be 1.7 and 3.3 meters respectively and thus are overlapped whenever the zoom is between 1 and -1 (where the number corresponds to log base 10 m). To fix this, I will have to try and change the zoom + camera perspective scripts. One positive feature is that the rendering of large to small objects can be done relatively quickly/easily/with low amounts of rendering- right now, my environment is "clamped" to 20 degrees of magnitude- from 10^10 to 10^-10 m. Thus, theoretically I can showcase from an atom to a star (1 angstrom to roughly 1*10^9m), but so far I have not been able to smoothly render all objects. I have also yet to change the keyboard controls to the meta quest joysticks.
3/02 - 8 hours
Largely, I worked on switching the simulation from being on the computer and using the keyboard controls to utilizing the joycons and meta quest. To switch to keyboard controls, I made a separate action script based on the y axis movement of my right hand controller. Basically, I moved the +- keyboard inputs into the right hand joystick of the meta quest controller. I needed to turn on developer mode but since Aarav was still the device owner, I couldn't get this to work. Thus, I performed a factory reset and was able to connect to Unity and build and run my project on my headset. After several hours of debugging, I switched the perspective to allow for multiple objects to be shown side by side, finally being able to showcase the relative sizes of objects. Due to the way the canvas objects and text box generated for larger objects, I had to cap the large objects at the main island of Hawaii. However, for the smaller objects, I was able to go down to the diameter of an atom, which is roughly 1 angstrom or 1*10^-10m. Thus, my final project has a scale going 15 orders of magnitude, from 1e5 m to 1e-10m roughly. I have finished up my google form questionnaire and have attached to the course timeline my steps of downloading and accessing my simulation and all other necessary components. Below I attach the required materials and steps to download and access my project:
Henry's in-class activity:
Please download/have access to the following:
Steps to utilize the VR simulation:
1. Please make sure developer mode is turned on- on your phone's meta horizon app, go to devices -> your device -> headset settings -> developer mode-> turn on
2. While connected USB -C to your computer, your headset will ask to allow USB debugging- check always allow, then OK
3. Download the Meta Quest Developer Hub on your computer and log in to your Meta account that is linked to your Meta Quest 3
4. Drag and drop the apk file onto the Meta Quest Developer Hub app, and put under "Connected Device: Meta Quest 3"
5. ScaleVR should be accessible to users now on the headset under applications