CRTVR

Overview

The CRTVR is an attempt to achieve the ultimate VR viewing experience while also making VR accessible and extendable for a wide audiance with minimal skills and tools, so that it is easier to create high quality vr expierences
For a VR headset to function properly, it needs to be able to present to it's user light patterns that are conciously and subconciously indistinguishable from those that in the analogus real life scenario would be expierienced. If the VR content is of the enviroment the user is in, looking through the headset and not wearing the headset should be the same.
In 2020, crt's have downsides compared to oled, lcd, and micromirror displays, in terms of weight, energy consumption and emissions outside of the visible light spectrum. But in terms of simplicity, accesibility, achievable framerate, resolution, and color depth they are still relevant. Because of the heat, voltages and vaccum, working with or making crt's shouldn't be attempted without proper consideration, but a crt can be made without an electronics foundry, where as fabricating a micro display requires complex patterning, chemistry and circuitry that isn't practical for most.
Any type of image source can be used with the reflector lens, but a crt was chosen because the driving electronics are simple and the analog non fixed nature of a picture tube allows for high refresh rate, color depth and resolution which are needed for a good vr display.
Using a picture tube as the image source, single element reflective lens, circuity capable of varying resolution raster and eyetracked image demagnification to increase resolution presented to the fovia,
in theory with a 5cm^2 image surface and diffraction limited spot size it would be possible to have a virtual resolution approaching 120,000 by 120,000 pixels filling the entire human field of view with life like imagery
In practice, a tube that big cant be made into a wearable headset, and so a tube with 1cm wide x 0.7 cm high surface will be used giving a theoretical maximum resolution of 24K by 16.8K or 6.6K resolution at 50deg field of view if the total fov is 180 deg. Realistically the spot size will be many times larger than 640nm with peak brightness in the middle and a falloff in brighness towards the outside of the spot, the tube used was originally designed for 640 x 480 resolution
The next goal for the project is to generate plans that with a 3D printer, minimal tools and parts it will be possible to create a high quality vr headset.
With inexpensive VR headsets avaliable that provide a viewing expierence as close to reality as possible, hopefully high quality vr expierences will become more common allowing experience seekers to ride the high of new immersive expierences and for productivity with expansive interfaces and high content density.

Blender 2.8 Plugin Files



Downloads

Blender File (Model from Make Human)
createElipseReflector.py (to be improved with better lensing calculation)
createCircuitBoard.py (not yet complete)
createTube.py
createCRTVRAddon.py

These files can be imported or copy pasted into the blender python console to add an option in the 3d vieport under add > mesh > Create CRTVR that brings up a panel for values used for defining the shape and position of the reflector mesh created. Setting the Camera positioned at the output as the active camera, and placing the viewport in Rendered mode using Cycles Renderer allows for previewing the image created. Some examples of perameters that can be adjusted are the vertex tolerance, smaller values results in a smoother output image and adjusting the mapped field of view and offset changes the magnification of the output image

Unity 3D Fovia Magnified Image Generation Camera Effect


Download

FMHFOVCamera.unitypackage

The FMHFOVCamera Unitypackage contains the components and scripts needed to render a fovia (central vision region) magnified high field of view image in Unity used to drive the crtvr headset. To maintain high resolution in the magnified region, the camera view is rendered multiple times with increasing field of view and decreasing resolution. The views are then sampled into a single image. This image format was chosen to serve as a bridge between the square pixel power of two format that binary graphics cards work most efficently with, and the non uniformly sampled varying field of view and focus that human eyes view the world in. On the headset side the traditional raster scanning was used as a starting point for drawing the image because it retains compatability with existing vga signals. Adding demagnification to shrink the fovia magnified region in the input image will give the viewer the expierience that the view is high resolution, while decreasing the amount of detail that is rendered but not seen in each frame.

Headset Circuitry


This circuit converts the horizontal and vertical pulses from a vga signal into linear voltage ramps to deflect the beam of a crt to x and y positions on the display to draw the pixels. It is designed to use as few components as possible to keep cost low. At the high horizonal refresh frequency, the ramp generator becomes less stable and the trim potentiomers are more sensitive when tuning.


If these scripts or page are helpful please consider a donatation Venmo (any amount helps) and or attribution

Keep making great games and vr content!

Thanks for visiting! page last updated July 28th, 2020