HACKER Q&A
📣 gorgoiler

High School VR Lab


I’m a high school CS teacher. I have been told if I apply for funding for a VR lab I am highly likely to receive it. There are a few reasons for this I don’t need to go in to. Apparently it has been decided that this would be good for the school!

Given that this (and only this, not any other funding) will happen, how can I make the most of it with my pupils?

I feel like it would be all too easy for it to be about consumption rather than creation. I’d really like to introduce some CS concepts like ray tracing to the pupils. (Ray tracing is easy enough to implement at high school level; it’s the execution that’s complex and expensive, not the algorithm)

Every time I think about that though I feel despondent that implementing our own code will be vastly inferior to using something off the shelf; that we should use Unity instead. Or some other tool?

And that actually seems like a fine idea until I iterate and feel like anything made with a tool isn’t going to be very good, and we should use something even higher level. Yet this would take us even further away from creating and closer to consuming.

If anyone had good experiences with what really got pupils interested, I’d love to know what that was. Am I a pipe smoking “in my day” oldie in thinking we should make our own stuff instead of using an existing framework? I feel like in the trade off between functionality (our own code will be pretty basic compared to a framework) and features, I’d rather have something I made myself any day. I have no idea if that will inspire pupils or not.


  👤 jmiskovic Accepted Answer ✓
I'm quite interested in use of VR in education. It's so early days and you can already see it's going the wrong way.

My take is that AR is going to take off in a huge way and it is going to be built on whatever VR community builds by then. I'm also in your camp that we should _own_ the technology and not just consume cloud-based solutions. If things are strapped onto our faces and in control of our senses, we users should own the software full stack.

I've devoted some time to learn LOVR framework for VR development. It enables use of Lua interpreted language as sole tool to build everything, there are no IDEs, scene managers or other tools. This means more learning and more re-inventing wheel, but so far it's been quite a fun journey for me. You can easily test it out and see how suited it would be.

I'm not a fan of Unity - I think in education it would be very hard to maintain development machines and support pupils. It's more suited to development studios where devs can invest months in mastering of tools, art pipeline and engine concepts. There are good alternatives in webVR space: BabelJS and Aframe.

I don't know how capable and knowledgeable your students are, but I think with guidance and mentorship Lua would be a good fit for educational purposes. Here's few ideas for educational VR projects for students. The molecular visualizer that renders XYZ file format is relatively easy to do, mine is <100 LoC Lua. Quite a few physics experiments can be replicated in VR, like ballistics, orbital mechanics, harmonic oscillations, optics. Maybe over years some of those physical experiments could evolve into a robotics lab? You could do mathematics-focused projects like rendering fractals, but any graphics project will be exercise in geometry and trigonometry.


👤 MaxLeiter
As a student (who graduated high school 2 years ago), I think it would be cool and inviting to most people to show examples in VR (like real games or unity projects), discuss/lecture, then implement. Some students will want to be hardcore and understand the bare-bones, some students will want to play around, and some students will want to use tools that the industry uses. You can get a nice balance of both what I mentioned and your own stuff and existing work. Maybe I'm being unrealistic, but that sounds like a great class to me.

👤 montroser
Maybe consider Mozilla Hubs as a starting platform? You can both easily build your own virtual worlds, and also hack on the platform itself if you like.

https://hubs.mozilla.com/