Microsoft about face on Xbox One's draconian DRM policy

19. June 2013

As reported on Gamasutra, Microsoft have made a massive u-turn on their controversial always online, no reselling games policy.

 

You told us how much you loved the flexibility you have today with games delivered on disc. The ability to lend, share, and resell these games at your discretion is of incredible importance to you. Also important to you is the freedom to play offline, for any length of time, anywhere in the world.

So, today I am announcing the following changes to Xbox One and how you can play, share, lend, and resell your games exactly as you do today on Xbox 360. Here is what that means:

An internet connection will not be required to play offline Xbox One games – After a one-time system set-up with a new Xbox One, you can play any disc based game without ever connecting online again. There is no 24 hour connection requirement and you can take your Xbox One anywhere you want and play your games, just like on Xbox 360.

Trade-in, lend, resell, gift, and rent disc based games just like you do today – There will be no limitations to using and sharing games, it will work just as it does today on Xbox 360.

In addition to buying a disc from a retailer, you can also download games from Xbox Live on day of release. If you choose to download your games, you will be able to play them offline just like you do today. Xbox One games will be playable on any Xbox One console -- there will be no regional restrictions.

These changes will impact some of the scenarios we previously announced for Xbox One. The sharing of games will work as it does today, you will simply share the disc. Downloaded titles cannot be shared or resold. Also, similar to today, playing disc based games will require that the disc be in the tray.

We appreciate your passion, support and willingness to challenge the assumptions of digital licensing and connectivity. While we believe that the majority of people will play games online and access the cloud for both games and entertainment, we will give consumers the choice of both physical and digital content. We have listened and we have heard loud and clear from your feedback that you want the best of both worlds.

That was Microsoft VP Don Mattrick.

 

Plus it reverses one of the dumbest things Microsoft have done, and since Gates retired, that isn't a short list. The Xbox One launch was so full of hubris it just handed Sony PR all they needed to position themselves as the gamers choice... And they did.

 

Here is the hilarious part... Know why Microsoft came out guns blazing about DRM this generation? It's because they knew Sony were doing it to. Now... Why some PR schmuck thought launching with a focus on what Xbox One *couldnt* do is a question for the ages. In the end though, Microsoft was just being more honest than Sony.

 

I mean, Sony has a huge history of... Well frankly just making stuff up about launch systems. Remember the PS2 launch... They basically crushed the Dreamcast under a pile of BS and promises. Or the PS3 reveal with its CG as gameplay videos and batarang controller?

 

Make no mistake, Sony and Microsoft both saw used games as harmful to the bottom line. Does nobody remember this bit of news? Sony was working to block used games too. So long as they both did it, they would have gotten away with it.

Now that Microsoft backed down, that slams the door on Sony "changing their mind" down the road. I wonder if there were more than a few "Ah crap"'s to be heard among Sony executives.

Thanks to Sony's PR stunt, we the consumers, all win. Plus the subject has become so poisonous, you shouldn't expect it to rear it's ugly head again soon.

 

Well except maybe online passes...

Or through legislative means... Possibly tariffs.

Ok, expect something soon. :)

 




Blender roadmap for 2.7, 2.8 and beyond

17. June 2013

I am a big proponent of Blender so I am always quite interested in how it is going to develop.  Recent releases have been all about bringing a number of projects that have been in the works for years back into the fold.  Functionality like BMesh and the Cycles renderer are now part of the core package and Blender is vastly improved as a result.  Now that most of that work is complete, Blender started looking toward the future and released their roadmap of upcoming features.

 

The nutshell version:

2.6x

  • For 2.68 and 2.69 we strictly keep compatibility and keep focusing on stability for Blender.
  • Anything potentially unstable or breaking compatibility should go to a 2.7 branch
  • If needed, we can do a couple of 2.69 updates (a b c d) to merge in bug fixes only.

 

2.7

  • Move to OpenGL 2.1 minimal (means: UI/tools can be designed needing it, like offscreen drawing)
  • Depsgraph refactor, including threaded updates
  • Fix our duplicator system, animation proxy (for local parts of linked/referenced data)
  • Redesign 3D viewport drawing (full cleanup of space_view3d module)
  • Work on cpu-based selection code for viewport
  • Sequencer rewrite
  • Asset manager, better UI and tools for handling linkage
  • Python “Custom Editor” api (including better Python support for event handlers, notifiers).
  • UI: refresh our default

 

2.8

  • New “unified physics” systems, using much more of Bullet, unification of point caches (Alembic).
  • Particle nodes (could co-exist for a while with old particles though)
  • Nodification of more parts of Blender (modifiers, constraints)
  • Game engine… (see below)
  • OpenGL 3.0?

 

Blender Game Engine

Or more radically worded: I propose to make the GE to become a real part of Blender code – to make it not separated anymore. This would make it more supported, more stable and (I’m sure) much more fun to work on as well.

Instead of calling it the “GE” we would just put Blender in “Interaction mode”. Topics to think of:

  • Integrate the concept of “Logic” in the animation system itself. Rule or behavior based animation is a great step forward for animation as well (like massive anims, or for extras).
  • Support of all Blender physics.
  • Optimizing speed for interactive playback will then also benefit regular 3d editing (and vice versa)
  • Singular Python API for logic scripting
  • Ensure good I/O integration with external game engines, similar to render engines.

What should then be dropped is the idea to make Blender have an embedded “true” game engine. We should acknowledge that we never managed to make something with the portability and quality of Unreal or Crysis… or even Unity3D. And Blender’s GPL license is not helping here much either.

On the positive side – I think that the main cool feature of our GE is that it was integrated with a 3D tool, to allow people to make 3D interaction for walkthroughs, for scientific sims, or game prototypes. If we bring back this (original) design focus for a GE, I think we still get something unique and cool, with seamless integration of realtime and ‘offline’ 3D.

 

All told, nothing earth shattering, but one heck of a big change in store for Blender game engine.

Art, News ,




Part 3 of a tutorial series about building a game engine from scratch released

17. June 2013

I mentioned last week about a new blog tutorial series covering creating a game engine from scratch, quite literally.  The series deals with the low level stuff we just don't normally deal with these days as Direct3D, OpenGL or WebGL take care of a lot of this for you.  Sometimes knowing how these things work can be a huge benefit.

 

By the end of part two, he had covered creating a wireframe 3d cube.  Today he has just released part 3.  

 

In part 3 he covers exporting a 3D object from Blender using the babylon plugin, to export to JSON.  He then covers loading in the JSON data and rendering it using the existing wireframe code.  The next section is supposed to cover rasterization and z-buffering, so stay tuned.

 

The end result after part 3 is:

Cool and ( these days ) unique series, keep 'em coming.

,




New Dreemchest release. Adds Flash support as well as ad, in app purchase, GameCenter support and more.

17. June 2013

Dreemchest, the Lua based cross platform 2D game engine (and GFS sponsor!) have just released RC147.  The biggest new feature has to be the ability to publish your game to the Flash player.  That said, there were a number of additional improvements including support for ads and in-app purchases, two features that are basically a game engine must have these days.  The complete list of announced new features is:

  • Composer preferences dialog
  • Built-in updater
  • Properties of type StageObject
  • Exporting iOS apps to IPA
  • iOS small icon inside project settings
  • InApp purchases
  • iAds advertisements
  • GameCenter
  • Cryptography
  • HTTP requests
  • Samples for Ads, GameNetwork, InAppStore, Swipe
  • Compressed bundle option for command line packager
  • Asset browser filters
  • OTF font extension
  • Breakout sample game
  • URLRequest sample project
  • Crypto sample project

Dreemchest is currently available as a free download for MacOS and Windows.  You can download RC147 right here.

News , ,




A tutorial series on building a game engine from scratch… almost literally

14. June 2013

Kids these days with their free 3D game engines have no idea what life you used to be like!  In addition to walking 5 miles up hill in the snow, both ways, to get and from school, if we wanted to render a polygon on screen, we needed to create a polygon first!

 

I'm not really kidding either.  In the DOS and early Windows 95 days, OpenGL was only available on high end SGI workstations.  There was no 3D accelerations, there were very few game engines and those that were available were insanely expensive.  If you were creating a 3D game engine, you really needed to roll everything yourself… line drawing routines, triangle rasterizing routines ( the act of turning shapes into pixels ), everything was created from scratch and you had no hardware to help you out.  Looking back, its rather amazing how far things have come in such a short period of time!  I don't think anyone could have even fathomed the existence of the Unity game engine back in those days.  If you ever felt that OpenGL or DX11 programming was low level, you should have been programming in those days!

 

Truth told though, it was a lot of fun too.  You opened up your copy of Michael Abrash's Zen of Graphics Programming (still an amazing book!) and got to work. Perhaps most importantly, you also had a better understanding of what was going on than you do now.  Strangely enough, I struggle more now with modern shader programming than I ever did back in those days.  So, while you had to do a great deal more it was also a great deal more simple.  You were always in control of your code, something that has become less and less true.

 

So, why am I talking about this… am I having an old person moment?  No, not at all!  Or at least, I don't think so… do you recognize if you have an old person moment anyways?

 

Ok, back on track… I mention this, because oddly enough David Rousset over at MSDN is creating exactly such a tutorial series.  In his words:

So why building a 3D soft engine? Well, it’s simply because it really helps understanding how modern 3D works with our GPUs. Indeed, I’m currently learning the basics of 3D thanks to internal workshops delivered within Microsoft by the awesome David Catuhe. He’s been mastering 3D for many years now and matrices operations is hard-coded in his brain. When I was young, I was dreaming to be able to write such engines but I had the feeling it was too complex for me. Finally, you’ll see that this is not – that - complex. You simply need someone that will help you understanding the underlying principles in a simple way.

Through this series, you will learn how to project some 3D coordinates (X, Y, Z) associated to a point (a vertex) on a 2D screen, how to draw lines between each point, how to fill some triangles, to handle lights, materials and so on. This first tutorial will simply show you how to display 8 points associated to a cube and how to move them in a virtual 3D world.

He is working in higher level languages ( C#, JavaScript and TypeScript ) and isn't quite getting as low to the metal as we used to, but creating a soft engine goes a great deal lower level than most programmers ever have to go these days.

If you've ever struggled understanding HOW DX or OpenGL work, as in actually work not how to use them, running through this series would be a very good idea.  Currently part one and part two are online.  Here is the end result of part two:

 

Of course, this is all for educational purposes only!  Creating a software based 3D engine in this day and age makes about as much sense as buying a horse and buggy instead of a car.  So if you ever wanted a peek behind the curtains, you may want to keep an eye on this tutorial series.

Programming ,