Hacker Newsnew | past | comments | ask | show | jobs | submit | ohf's commentslogin

> Yep. I bet this changes relatively soon, since you can sometimes use recursion in OpenCL & CUDA.

Am I correct in assuming you can only recurse when the recursion can be "unrolled" into a simple loop? In other words, no program flow structures.


You can do real recursion sometimes, and real program flow. It does depend on CUDA version & chipset, but most modern ones support flow control. (https://stackoverflow.com/questions/3644809/does-cuda-suppor...)

I think there are still cases where it won’t work right due to other libraries that might be involved, I’ve had recursion fail even on a new GPU with cuda 9.

Even if you can use recursion, it’s not usually a good idea since you’ll run into thread divergence problems.


Neanderthal isn't a synonym for stone-age.


High CPU overhead seems reasonable for HTML5-based games. Introducing a DOM can only make things slower relative to a leaner (native) engine.

For reference, I'm on a late-2015 laptop (XPS 13 9350) with integrated graphics, but the newer i3 gives me perfectly fine performance.


Canvas doesn't have a DOM, for what it's worth.


Oh, duh.

Still, javascript.


Wow, that webpage sucks. What are the specs?


Here's the important info from a review

> Unlike the Oculus Santa Cruz, the Oculus Go doesn’t include full motion controllers or futuristic inside-out tracking technology, which lets users walk around rooms with no external cameras. It allows you to rotate your head, but not lean or walk around. You can move its small controller like a laser pointer, but not fully mimic a virtual hand. It’s got basically the same features as Samsung and Oculus’ Gear VR, but as a dedicated piece of hardware, not a combination of smartphone and plastic shell.

So basically it's another one of those "turn your smartphone into VR" without needing the smartphone.


> futuristic inside-out tracking technology, which lets users walk around rooms with no external cameras.

Perpetuating the myth that 6DOF head tracking is for "walking around the room".

It's not. Even small head movements reveal parallax and without that VR isn't anywhere near as convincing an illusion.

6DOF is pretty much a base requirement for immersive VR.


Daydream, and I assume Gear but I don't know for sure, has that slight parallax by using a neck approximation and head pitch and roll.


Gear does have a head model, you can tell really easily in pretty much every Gear/Go game by looking at parallax differences between near and far objects.


So basically the most interesting experiences (eg. The Lab's Longbow game) are not available.

This is a very limited and transitional device then.


The Oculus subreddit seems to have a decent writeup:

https://www.reddit.com/r/oculus/comments/8g7ypb/the_answer_t...


TLDR: "Overall, Go's performance should be on par with a Galaxy S8 or better."

It's pretty much the same hardware as a GearVR with an S8. The big difference is that it is physically larger, so the thermals are greatly improved. Thermal throttling may be the largest bottleneck in mobile VR.


Indeed. Does it do any sort of position tracking, or just orientation tracking?

It is nice though that it has been designed for prescription lens inserts.


There's no "6 degrees of freedom" here, just head orientation, much like the Gear VR and so on. It's significantly more basic than the Rift in that regard.



So much


> Java calls references, works more like C/C++ pointer, rather than C++ reference

What makes you say this? You can't do pointer arithmetic on Java references, and the internal memory model is completely obscured. C++ and Java references look similar to and are accessed like variables. The major difference is that Java references can be reassigned, like a pointer, which is necessary in a language without true pointers.


In C++, references aren't objects (eg. they have no size and no address), they can't be stored in a vector, there's no way to operate on the reference itself, everything is transparently forwarded to its referent, there is always a referent.

In Java, a reference is a value, it can be stored in an ArrayList like a normal value, you can operate on the reference itself (reseating it, comparing two of them, comparing to null), there is not always a referent.


Touche.


Java references are closer to C++ references than anything else. They're like pointers until you access/call them, at which point they're just objects. C++ references are identical, but the syntax is a bit more explicit.

It is a funny language feature to have when you think about it; it just so happens to be useful. References and pointers are distinct in languages that have both (C++), so not mixing the terms between languages is helpful. If Java programmers started referring to their variables as "pointers," because internally, that's more representative of what they are, I'd be a bit irked.


I would actively avoid that, but only because it confuses me.

That syntax loosely implies that removing the second d assignment would allow me to create new-but-altered dogs with alterDog(Dog), which isn't the case. If I wanted to use assignments like that, I would try to go fully immutable with factory methods that help me make slightly different, new dogs on the fly, and return them.


Here lies the tale of Marissa Mayer.


That article sure manages to say a lot without saying anything at all.


It's whoever 4chan is.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: