Slashdot is powered by your submissions, so send in your scoop


Forgot your password?

Comment Re:Is it really as chunky as the pictures suggest? (Score 2) 69

This is the dev kit, off the shelf hardware, 7 ounces, a little bit larger than a pair of ski goggles. But it will probably stay about the size of ski goggles, though, as Oculus wants to keep the low price point and the large field of view without needing two displays(synch & latency) or complex optics($$$).

The size difference is kind of the point, as they are made for different purposes. The Rift is intended be as large as possible, while .5" screen on Glass is supposed to stay out of your line of sight.

Comment Re:I don't like boost (Score 1) 333

k) Add a proper exponent operator

Won't and Can't do this efficiently. Not all CPUs have an intrinsic way to do exponention. This is specifically why it's a library function so it is obvious that it is potentially a non-trivial operation. Once again, not everyone uses an Intel CPU.

q) Add a proper rotate-left and rotate-right bit shifts

See the answer to exponent operations. Simply put, not all CPUs have this. I would however welcome a standard library function for this like pow for exponents. Which the compiler could inline to a single instruction if the CPU supports it.

I agree with most of your points, but I can't really agree with your logic on these. Hardware floating point support wasn't common until the 486 days. A lot of lower end CPUs used to omit support for division. That didn't stop C/C++ from including support for those features.

I think the reason for omission is simply that the operators are nothing more than syntactic sugar. Anyone that needs those operations can write them quickly without putting much thought into it. They were probably left out originally to keep things simple in the early days of C. Now the standard committee seems very hesitant to make changes to the syntax of language, so they probably just look at these things as nice to have but not worth changing syntax over.

Comment Re:why glass should respect privacy (Score 1) 154

Imagine walking into a crowded room, "tagging" the best looking person there, and then doing an in-depth query on their back story. The next time you see them, appropriate info is fed to you to be able to act like you're someone they should know and like.

And that person does a back search on you as well and realizes that you have never been within a mile of them before this night, nor have you ever been to any of the places you claim to have been or done any of the things you claim to have done.


Comment Re:It is not that simple! (Score 4, Insightful) 369

I'd love to vote with my dollars, but EA keeps interpreting my "no" votes as piracy

Games where I can't possible spend more than the equivalent of two full games on items that materially affect gameplay and are permantent(ships, weapons, etc) or where the stuff is purely cosmetic, I don't mind.

What gets annoying are games where the microtransactions hide that you will end up spending hundreds of dollars on temporary boosts, disabling annoying features, and buying "action points" or "resources" that are clearly designed to limit how long you can play per session.

Comment Re:will they kill the patch/reboot/patch/reboot cy (Score 1) 199

If a shared library is already loaded why would the system not reuse the reference to that library it already has loaded rather than attempting to ask the current file system view for to establish a separate reference?

Because that's how it's always worked in UNIX ? Some people think it's a good thing, and that's why this update in place stuff works.

If two programs running in separate memory spaces experience these kinds of side effects while communicating with each other this is a protocol design issue. Remember it is entirely possible to have local versions of shared system/runtime libraries that differ between application because of locally installed DLLs or DLLs within search path.

Ideally, sure. But I specifically mentioned bug fix cases. Stuff happens, things go wrong. You do have to deal with it.

The issue gets worse if on-disk data is involved. You've now got data files potentially being updated by different versions of a library, potentially leading to data corruption or loss.

Who writes an on disk format that changes between versions without properly versioning the file? Garbage In = Garbage Out.

Changing code that's in use = garbage in. I'm not talking things like a document file that's written once and closed, I'm talking files continually accessed by multiple processes.

For a specific example of this happening, back in the days when libc had major changes frequently (think libc5 -> glibc/libc6 days), it was pretty common to do a system update and end up with problems with utmp and wtmp caused by two versions of libc being in use. You'd get garbage output when you ran commands like "who". The problems went away when you rebooted to get rid of everything using the old libc.

Comment Re:will they kill the patch/reboot/patch/reboot cy (Score 1) 199

It is OK on Unix because that replaced library still exists in memory and can continue to be used by the programs ... running in memory!

Each new invocation of the programs that try to use that library will of course pick up the new version. It's not magic. I don't get why people can't grasp this.

But that's exactly why there is a problem!

Library version numbers generally change when the API changes. If a new version of the library is source compatible with the old one, the version generally stays the same. However, that doesn't mean the internal workings are compatible.

Let's say you've got a library that handles communication between applications. You've got Foo running with library version 1.2.3. The developers discovered a bug in the library's internal data transfer protocol. The bug is an implementation detail, not an application visible one, so they simply fix it and release version 1.2.4. It's 100% API compatible - taking advantage of the fix just requires updating the library. You update the library in place, with Foo still running using version 1.2.3. You start up Bar, which now loads library version 1.2.4. When the two apps try to interact, you're now going to get bugs or even crashes when they interact. They believe they're using the same library, but they're not. You've now run into a class of bugs that only exists because you updated a library that was already in use.

The issue gets worse if on-disk data is involved. You've now got data files potentially being updated by different versions of a library, potentially leading to data corruption or loss.

Comment Re:For the life of me (Score 1) 525

16 years is unreasonable. The battery in the Tesla only has an eight year lifetime and costs around 20-32 grand by itself.

$2500-$4000 a year is more than the average american spends on gas per year. Even worse for the "only drives 30 miles a day" consumer that are targeted by hybrid/electric vehicles.

If they can get the battery cost under 14k, then it'll be the obvious choice. Or when gas prices hit $7/gallon.

Comment Re:Why? (Score 1) 113

The index buffer is not updated every frame, just once.

That's not always true. Sometimes it's more efficient to just stick the vertex data directly into the vertex buffer as your frame is generated, then do your draw order sorting at the end by rewriting the index buffer.

Comment Re:Why? (Score 2) 113

Triangle strips require everything in one draw call to be connected. If you want to draw N quads, you have to make N draw calls, passing 4 vertices each time. There's a significant amount of overhead involved in a draw calls, so this is slow. With quad support, to draw N quads you can just make a big array of 4N vertices and process it all in one draw call.

Slashdot Top Deals

I judge a religion as being good or bad based on whether its adherents become better people as a result of practicing it. - Joe Mullally, computer salesman