Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon

3. July 2013

 

Now that Project Anarchy is out, I’ve decided to take a look at what you actually get.  If you’ve never heard of it before, Project Anarchy is a collection of Havok game development tools made available completely free for mobile developers.  In this post, we will look at exactly what those tools are composed of.  To get started, head over to the download page and download the installer.  The initial download is just a downloader, the actual install is a great deal larger, just shy of 5GB on my system.

 

 

When I started this post, I expected it to be rather short… boy was I wrong.  Let’s just say, you get a LOT in this package.  This post will give you a pretty good idea of what you get in Project Anarchy and should give you an idea of it’s capabilities.

 

 

Getting started and help contents

 

After installing, you should have a folder structure like this:

image

One important thing to keep in mind, to develop for iOS you need a Mac and need to perform a different download.  Also it is important to note that the vast majority of Project Anarchy’s tools do not run on MacOS.  So basically, you will need a Windows and Mac machine if you want to do iOS development.  That’s pretty much normal at this point in time though.

 

A bit of a warning, Project Anarchy isn’t the only thing you will need to install.  To do Android development on Windows, you will also need the Android SDK and NDK installed, Visual Studio 2010 or higher ( Express works, but lacks Android debugging), as well as the Java 1.6 JDK.  Notice again, 1.6, not the newest version!  Seems a common trend for developer tools to require Java 6 instead of 7.  If developing for iOS, you need to have XCode and the iOS SDK installed.  There is a document specifically about getting start with Android and iOS that walks you through the process in more detail.

 

Documentation and learning resources

 

The documentation shipped with Project Anarchy is in a word impressive.  A great deal of the documentation is installed locally.  The directories that will be of immediate interest to most developers are \Docs\Vision\windows, \Docs\Vision\android, \Docs\Vision\ios, although confusingly enough, they seem to contain only slightly modified versions of the exact same documents!  So, if you want to shave 600MB or so from your install, you can probably start here.    The VisionEngine_Documentation_platformname.chm file is the master index, pulling all the other documents together.  Project Anarchy includes the following documents:

 

image

 

As you can see, a pretty comprehensive set of documentation.  The Startup Guide is the most logical place to start.  It gives you an overview of the various tools, a short Lua scripting primer, etc.  Perhaps coolest of all, there is a full sample project with assets that you can play around with.  These assets are referenced multiple times in the documentation.  There are actually a ton of assets for anyone to get started with, especially if you dont have immediate access to Maya or 3DS Max.

 

In addition to the documentation installed locally, there are a series of video tutorials available, covering vForge, Animation and the basics of scripting.  The quality of the videos varies massively from very good to… not.  There are also a series of courseware, which you can think of like tutorials that are targeted towards school curriculums.  The course ware series all revolve around the sample project you can download here (direct link, 100mb in size).  Additionally they have a StackOverflow style question and answer page as well as a remarkably active forum, considering the age of the project.

 

All told, the information available is quite good.  That said, I’ve done a fair bit of jumping into the documentation and it’s a mixed bag.  It’s well enough written and generally useful.  That said, it has some serious legacy issues, as much of this obviously was inherited from Havok tools, and they’ve been around for a long time.  For example, I found configuration details for Metrowerks Codewarrior… a compiler that might be older than some of the people reading this right now!  So there is a huge amount of documentation, but figuring out which parts you need might be a bit of a challenge.  In the end though, it’s much better than I was expecting and a very well documented and supported SDK.  You can tell they put some focus on documentation/new user experience, and it shows.

 

vForge

 

In many ways vForge *IS* Project Anarchy, in the same way Unity Studio is Unity.  This is where you create your levels, write your scripts, create landscapes, etc.  Basically it’s the glue that holds all the other pieces together.

 

Here is vForge with the RPG project loaded and the Arena scene open.  FYI, the RPG project is available at Data\Vision\Samples\Engine\RPG

image

 

You can navigate around the scene using the mouse.  Aiming with mouse, left mouse button to move in the direction your are looking, right mouse button to change your look direction.  You can also configure it to use WASD keys for navigation if that is your preference.  See where it says “Default Layout”, this is where you can change the layout between the various things you might want to do in vForge, such as script editing, particles, etc.  You can also define your own custom layouts, or use almost every panel as undocked, which is nice on a multi monitor setup.

 

In Engine View, this is where you can place items in the scene.  Here for example, I instanced a BOSS shape from the Shape Creators tab by dragging and dropping onto the Engine View.

 

image

 

Press the Play icon in the Engine View toolbar, and your game will start playing, UI and all ( animated obviously… ):

 

image

 

So, vForge is where you place game objects, but that’s just scratching the surface.  There are a staggering number of tools embedded in here… see:

 

image

We will look at many of them shortly.

 

Script Editing and debugging

 

For example, opening the Script Panel, brings up a script window.  Here is the Boss script:

 

image

 

As you can see, the script editor has full intellisense support, well if that wasn’t a trademarked Microsoft term that is.  What’s the non-trademarked term… code hints?  Anyway… it has them, and I love ‘em.  It’s not as detailed as you might be used to in Visual Studio, but its a great help.  That ? icon to the right brings up context sensitive help too, so highlight a function name and click that button and it will open the reference help to that entry if found.  Handy.

 

Each of these floating panels can also be docked within the main editor, here is the script panel docked below the Engine View for example:

 

image

 

The script editor looks remarkably simple, but there is a great deal of functionality hidden in there.  For example, there is a full snippets library:

 

image

 

In addition to the Script Editor, there is also a full script debugger:

 

image

 

With all of the traditional components you would expect, breakpoints, watches, type inspection, it even allows you to connect to a remote device for debugging.

 

Perhaps coolest of all, by clicking the highlighted debugger, you can invoke the code profiler.

 

image

 

Allowing you to identify performance bottlenecks in your scripts. 

 

 

Terrain

 

Creating Terrain in vForge is a straight forward process.  In the Shape Creators tab, simply drag a Terrain over to your scene:

 

image

 

You will then be prompted with this dialog:

 

image

 

Then its a matter of configuring your terrain:

 

image

 

And presto, our landscape, using the default settings and sand texture:

 

image

 

Now fire up the Terrain Editor and you can raise, drop, smooth, paint, etc… your terrain.  Select the tool, and hold down SHIFT or CTRL and Left Click to paint.

 

image

 

And after playing around for a few minutes:

 

image

 

Obviously I am just playing around and using a fraction of the tools.  You can paint mesh (instances) directly on to the terrain, paint billboards ( textures that always face the user, useful for grass and similar effects ) as well as set up sky boxes including full day/night cycles.

 

In fact, there are dialogs for editing the sky:

 

image

 

Editing time of day, including the effect, sunset and sunrise times:

 

image

 

As well as fog editing and post processing effects ( glow and tone mapping, two settings you chose when initially creating your project ).  So the terrain editing tools are fairly comprehensive.

 

Particles

 

Of course, particles are a heavy part of almost every modern tool and of course, vForge includes a suite of tools for working with/ creating particle systems.  In the form of the particle editor:

 

image

 

This is one of those things I have always sucked at, so it was comforting to see the templates when I clicked the Create a new particle effect button:

 

image

 

The actual editor has a few hundred different settings for your particle system, if you create a particle system, then set it to your newly created system, you can press the play button and watch your change in real time.

 

 

Physics Integration

 

As you can see, Havok Physics is also directly integrated into vForge

 

image

 

Of course, that is only part of the physics equation…  the global part.  You are of course going to need to add physics to your scene.  This is accomplished by means of components.  Add an entity to the scene, define its model type, then you can add a component easy enough.  In this case, i’ve add an entity with a ball model.

 

image

 

Here we selected then entity then added the Havok Rigid Body controller.  As you can see, there are a number of parameters you can play with for Rigid Bodies:

 

image

 

Of course, rigid bodies aren't your only option when it comes to physics.  There are a number of constraints you can add as well ( under the Shape Creators ), such as adding a Terrain constraint to the Terrain object, which will then cause our Rigid Body Ball in interact with the terrain.

 

Mobile Helpers

 

Mobile development has it’s own special difficulties, two of which Project Anarchy has a nice solution to.

 

The first common issue is the deploy cycle.  Generally what you do (on Android) is create an APK, which is your application and all of it’s data bundled together into a single package.  So what happens when you change a few small things then want to test it on device?  Well, you create a new APK file and deploy it.  As your application grows in size, this process gets more annoying.

 

Enter vFileServe, which can either be run in vForge or as a stand alone application.

 

image 

 

Essentially it acts as a virtual file system.  You deploy an application to your device ( using the Prepare Devices Button), which then syncs files between your device and vFileServe using wireless.  This allows you to make changes and do rapid on device testing.

 

Another common problem with developing for mobile devices is emulating the controls.  Multi-touch and motion controls specifically are often difficult to replicate on a PC.  For this Havok provide the vRemoteInput plugin, which enables you to use a mobile device to control vForge.  It is enabled in code however, so there is very little I can show in terms of screenshot.  Basically once enabled, when you go into “play” mode, your game can be controlled using your devices touch screen and motion sensors.

 

Shaders

 

There are also comprehensive tools for dealing with shaders.  The first and easiest to use is the Visual Shader Editor:

 

image

 

This tool enables you to create shaders by linking items and operations together.  For those that prefer direct access to their shaders, there is also an editor:

 

image

 

On top of this, there are panels for creating and managing shader libraries, property inspectors and more.

 

Havok AI

 

AI is obviously a big part of game programming and the user is often left to roll their own.  Not so in Havok, Project Anarchy includes the Havok AI suite.  This is a combination of a set of tools integrated into vForge, as well as many AI related functions available to the programmer.

 

Here are global AI settings:

image

 

In vForge, you have the ability to set up Nav meshes, which consists of geometry that define the navigable portions of your game:

 

image

 

You also have the ability to makes paths ( bezier splines ) for AI to follow, triggers and more.  The majority of Havok AI seems to be on the developer side, with a large number of api calls for things like determining the best path, etc.  I need to look into Havok AI in greater detail later.

 

Havok Animation Tool

 

This is another entire application, seemingly for making animation state machines, so basically for “gamifying” your rigged animations.  Yeah, I think I made that word up.  Truth is, I am not an animator, so this is way outside my pay grade…  anyways, here is Havok Animation Tool running an included example project ( located at C:\Users\Mike\Documents\Havok\Havok Animation Tool 2013.1.0.0-r1\GameAssets\Hero on my PC ).  You can control the characters animations using a game pad.

 

image

 

Again… not my realm of knowledge, so I know very little about this tool.  I believe this was a good part of the product known as Havok Behaviour.

 

Other Tools

 

There are a collection of other tools that are part of Project Anarchy as well.

 

One is the Visual Debugger

image

In Havoks words:

The Havok™ Visual debugger (VDB) is a very convenient tool to monitor the physics representation of a scene in real-time. By watching the physics objects in the visual debugger, you can quickly locate any potential errors, which may not have been located by viewing the scene in vForge alone.

 

vFontGenerator

image

For creating fnt bitmap font files.

 

vSceneViewer for viewing scenes (outside of vForge)

image

 

vModelViewer the name pretty much says it all, for viewing Project Anarchy model files:

 

image

 

vAnimTool You can load a model and anim animation file preview and edit animation sequences:

 

image

 

Art Pipeline Tools

 

There are plugins for Max and Maya for exporting 3D content.  I don’t have either currently installed, so I can only show this screenshot taken from the documentation:

 

image

 

So then… what happens if you don’t have Max or Maya?  Well, you are out of luck.  There is a 30 day fully functioning trial available, but unless you are a student there is a 5000$ pricetag at the end of that trial.

 

Fortunately, that is just a temporary problem, from the ProjectAnarchy answers website:

 

Based off the community feedback we are currently working and testing an FBX importer. We realize that many users in the community use other modeling packages and the FBX importer will help those users with being able to get their assets in.

 

Once that importer is available you will suddenly be able to use tools like Blender, Cheetah, Poser/Daz, Silo, etc.  Basically any tool that exports FBX, which is just about every modern app.

 

Summary

 

There’s tons of functionality packed in this engine, and this is just looking at the tool side of the equation.  Of course there are dozens upon dozens of APIs behind the scenes as well.  In the future I will look closer at how you actually put it all to use.  Let me know if there is anything you specifically want covered.

 

I will say, I am a lot more impressed than I thought I was going to be.  I thought it would be a bunch of poorly documented tools mashed together with minimal documentation.  In reality, it’s a remarkably cohesive and powerful package that covers almost all of the bases.  They certainly have my interested piqued.  Good job Havok!

General, Design, Programming , , ,

2. July 2013

Back in March I reported that Ludei was bringing WebGL support to their HTML5 performance wrapper, CocoonJS.  Today I received the following email:

 

The latest version of our Cloud and Launcher is available now! 
The wait is finally over! CocoonJS1.4 is NOW available in Google Play! We are still pending approval with the Apple App Store, so please check daily for its debut! This version includes the following awesome features:

  • WebGL support is now available! For the first time ever, publish your 3D games to iOS and Android devices!
  • Convenient 1-click Publishing to 5 App Stores -- bundles generated for: Apple, Google Play, Amazon, Chrome Store, Pokki
  • Improved Configuration Options for the Ludei Cloud Compiler
  • Updated Third Party SDKs -- advertisements, social integration and in-app payments
  • Improved Resources Management
  • Improved Audio Implementation that supports more HTML5 features
  • Improved webview support allowing you to develop HTML5 web apps while still having all our extensions available to monetize and make your game or app successful
  • And much more!! Click here to read the blog post!

 

This means you can now develop WebGL games and use Cocoon to deploy them to iOS and Android.  I am not sure if you ever tried running a WebGL application in a mobile browser… it's appalling.  None of the official browsers support WebGL, and the few that do ( Dolphin? ) got abysmal framerates.  So, if you want to run a high performance WebGL based game on mobile devices, CocoonJS is about your only option.

If you've never heard of CocoonJS, it's basically a high performance, striped down browser optimized for gaming.  It acts as a host for your game, so you bundle your game and Cocoon together to create an App Store deployable application.

 

In the same release, Ludei also announced:

Ludei Secures $1.5M in Funding 
We just announced that we recently received $1.5M in funding from key venture capitalists and angel investors, further validating the increasing industry support of HTML5 development. Click here to read more.

So you don't need to worry about they going anywhere sometime soon!

News , ,

30. June 2013

 

Some time back I purchased Codea for my iPad.  Codea is a Lua based game programming kit for creating iOS games on the iPad and frankly it’s really kinda cool.  That said, actually typing code on the device is a bit of a pain, so I looked coming up with an alternative.  It worked, but it certainly wasn’t ideal.  Today I was on the AppStore and I noticed Codea had an update and added something called Air Code, which allows you to connect to Codea using your web browser.

 

Using Air Code is really easy, in Codea on your iPad, open the side menu and select AirCode:

1

 

Then it will tell you the address to open in your browser.  Your computer and iPad need to be on the same network for this to work:

2

 

Open that address in your desktop browser and a list of your available projects will be displayed:

image

 

You then select the code file to edit and the editor appears:

image

 

As you code in the browser, it updates live on the iPad:

3

 

That is very very very cool.

Right now the editing functionality in the browser is quite limited.  It’s basically a text editor only now.  Hopefully in the future they add intellisense support and possibly debugging.  This is a very nice start though, and easily gets around the lack of keyboard support.  Nicely, this process doesn’t require a Mac either, any web browser should work fine.  Coding on one screen and seeing the changes reflect live on the other is actually a very intuitive way to code.

I did run into a small bug, in that focusing away from Codea to check email, when returning I could no longer connect via browser.  Shutting down and restarted Codea fixed the problem.

So, if you have an iPad and another PC and want to create games, Codea is a very cool product and worth checking out!

Programming, News , , ,

28. June 2013

 

I mentioned a little while back that I ordered a 14” Razer and there were some shipping issues.  Anyways, it is here now and I’m loving it.  I’ve noticed in search logs I have people landing here because they searched for Razer Blade reviews.  I figured I would share my initial thoughts and impression for people interested in this unique laptop.

 

Apple was an obvious inspiration behind the Razer line of laptops.  In an interview with The Verge, Razer CEO Min-Liang Tan said:

I love Apple products," he says. "I think they do an incredible job in terms of industrial design. But, for us, it's also been an issue of creative professionals coming to us after Apple moved out of the 17-inch space."

 

I’ve owned several Apple products and I will admit this experience ( and price tag! Smile ) was by far the most Apple-like I’ve experienced on a non-Apple product, except perhaps my Sony Xperia phone.  It starts with the packaging experience on out.  My last Dell came in a brown box…  here is the Razer’s unboxing.

 

The box itself is actually a thing of beauty… not too many times I've even noticed the packaging of a product.

 

Box in the shipping packaging:

1

 

My new baby

2

 

The remaining contents…

3

Basically it’s the laptop, the power supply and a couple booklets and that’s it.  The box on the left is the power supply box, it’s pretty small.

 

That sexy box.

IMG_20130628_183329

 

Frankly that is what the Xbox 2 should have looked like!  I know at the end of the day this stuff doesn’t really matter.  It shows a level of pride though and an attention to detail.  Plus it makes you feel like a little kid on Christmas again… 

 

Now to the actual machine.  As a big part of this machine is it’s size, I’ll follow up with a number of close-up comparison shots, but for now, here it is relative to a 2012 Macbook Air, it’s Muse.

4

 

Now to the actual machine…  first off, it ships with Windows 8 and absolutely ZERO bloat.  Nothing at all.  What a refreshing experience not having to immediately re-install the operating system.  Drivers are all current and OS seems to be pretty up to date, it was pretty much a matter of start and go with this machine.

 

Specs

The machine itself has pretty solid technical specs:

Intel® Core™ i7-4702HQ Quad Core 2.2GHz / 3.2GHz (Base/Turbo)

8GB of RAM

GeForce GTX765M w 2GB DDR5

Integrated HD4600 GPU

14” 1600x900 matte display

256 GB SSD ( 128/512 available )

3USB 3 ports

 

The only thing that makes me a bit worried is the 8GB of RAM, it’s a tad on the light side by modern standards, but truth is, I rarely use that much even while compiling or doing 3D work.  The lack of ethernet kind of sucks, but the wireless works exceptionally well.  I don’t know if I can attribute that to Windows 8 or the chipset chosen, but the wifi performs MUCH better than all the other devices in my house. 

 

Performance and Benchmarks

One of the very first things I did was update the Windows Experience Index:

image

 

I’m kind of surprised by these scores across the board.  The Haswell Intel CPU scores respectably at 7.8, but the GeForce 675 GPU is easily the weakest link here.  It’s only about 20% higher than my 560M, that seems low to me.  I almost wonder if Optimus is to blame for the lowish Gaming Graphics score. The solid state drive scores respectably enough.

 

The GPU is a GeForce 765.  Here is how the GPU benchmarks relative to it’s peers according to notebookcheck.net

image

In terms of game frame rates, Bioshock Infinite clocks in at 80fps on high settings, while Crysis 3 manages 37.  In terms of actual frame rates, it seems to be about twice as fast as my Asus G53SX with a GeForce 560M.  It’s certainly not the fastest GPU, but its no slouch.  Its a fair bit faster than the GT 650M found in the MacBook Pro, the only comparable machine IMHO.

 

About Heat…

One big part about gaming laptops is managing heat.  On the whole the Razer does a pretty solid job.

This is the laptop temperatures reported at idle:

image

 

Now after an hour of gaming:

image

In terms of actual use, the wrist area gets slightly warm, ditto for the keyboard.  Not hot by any definition of the word.  The heat is almost entirely at the base of the screen, hot but not scalding to the touch.  Heat does vent out straight down at the screen bezel making it uncomfortable to game with it on your lap.  The bottom of the laptop itself is quite comfortable, except again right below the monitor.  It cools down very quickly, within 10 minutes or so of ending my gaming session, its back to normal temperatures.  If you game, do it on a table, not your lap.

By comparison to other machines, it handles heat much more quietly than my GeForce 560 equipped G53 and the head is much more localized.  It does however direct more of the heat downward than the G53.  The heat profile is actually very similar to the Macbook Air.  The Razer however is quiter than the Macbook and the surface area where heat is vented ( below the screen ) is much cooler on the Razer.  Over all I consider it pretty successful on heat venting, exceptionally successful on volume levels, but a bit disappointing about not being able to play with it on your lap comfortably, although that’s often the case with performance laptops, so I’m not surprised.

 

The Screen

The 1600x900 resolution seems about perfect for a 14” laptop.  I think 1080p would have been hard to read.  The viewing angle of the screen is exceptional, you can clearly read the screen from any angle from left to right.  Vertically its about +-30 degrees where visibility gets difficult.  The brightness is good, even using it outside in full daylight causes no issues.  The screen isn’t glossy at all, so I don’t have to look at my ugly mug’s reflection while typing.  The price though is a bit difficult…  When the screen is static it just looks…  muddy.  Like I can see small black spaces between pixels.  I am sure someone can describe it better, but when typing black text on a white background, it is very visible.  When gaming it isn’t.  It’s all a matter of opinion, but at the end of the day I like the performance of the screen ( brightness, viewing angle, etc… ) but I dont particularly like the look of it.

 

I’ve been asked to expand a bit on the matte effect on the screen.  I’ve tried to capture it as best as I can with a camera phone.  You may need to click the image to get the higher resolution version to clearly see.  The camera pic makes the effect look much much much much worse than it actually is.  The “grid” like effect is more like what you see in the top left or bottom right of the image below.  Again, the screen is nowhere near as bad as the screen actually is in use, but it gives you an idea of the grainy-ness that the matte screen adds.

 

The Battery

You may have heard the number 6 hours somewhere describing the Razer Blade’s battery life.  I honestly don’t think I could replicate this number… perhaps by turning the screen and CPU settings down to the lowest settings, turning off wifi and doing absolutely nothing for 6 hours it might work.  It’s only been a couple days so it’s hard to give exact figures, but my experience so far seem to indicate around 3.5-4.5 hours of casual use ( surfing, blogging, writing code ) on balanced power settings and screen at about medium brightness.  Gaming though is another story entirely.  I unplugged my laptop from 100% charged and played 15 minutes of MechWarrior Online.  This took 20% of my battery.  So basically you can expect about an hour of high CPU/GPU usage, kind of disappointing, but at the same time, pretty typical.  It’s better than my G53 which refuses to even run at full speed on battery and even still manages to get worse battery life than that!  Thankfully the power adapter for this thing is super light and small so you can carry it around with you.

 

The user wrecks over at this notebookreview.com thread just posted this video of a battery test:

 

The details were:

Airplane Mode
40% Brightness
Vlc Player using integrated GPU playing 720p Video.

 

The laptop lasted 3:47 minutes then shut down with 7% battery remaining.

Build Quality

 

It’s top notch, exactly what you would expect from a 2000$ laptop.  All the edges are solid, there is no flexing or mismatched edges, etc.  The hinge seems strong and the action is smooth.  The keyboard is excellent.  Keys are well sized, good action and feedback.  It’s a mini layout of course, so no page up/down, end, home, etc.  The trackpad is very responsive and feels solid as well.  The dedicated buttons are a nice option, you could actually game on this trackpad… poorly, but that’s still better than most trackpads.  It’s superior to the Macbook Air’s trackpad, which is shocking as it is an excellent trackpad.  The buttons though, they worry me.  If there is a weakpoint on this trackpad, it’s the buttons for sure.

 

I did run into a problem with the trackpad, I dont know if its a Windows 8 issue or a Razer issue.  It ships default with scrolling reversed, which is irritating as hell.  You have an option to turn it off in the touchpad software, unfortunately it only effects one of the scrolling settings.  For example, I had two finger scrolling and hotspot scrolling both enabled ( this is how it ships ).  When you set the flip option, it only applies to the hotspot scrolling.  Disable the hotspot setting and then the two finger touch scrolling will work once flipped.  Not a big deal for me as I only wanted two finger scrolling available anyway.

 

Conclusion

So, do I feel it was worth my 2 grand?  Yes, very much so.  It’s a fast capable machine and very portable.  The audio output from this thing is surprisingly good while the noise levels from fans is impressively low.  It gets hot while gaming, but in the right spots.  You don’t want to use this thing on your lap and game, but you don’t want to do that with most gaming laptops.  On a desk the heat is perfectly manageable, in fact, you barely notice it. 

I love the fact the machine shipped with no bloat.  There is no recovery disk/USB stick, which is a bit disappointing.  Losing 15GB of a 256GB drive to a recovery partition is a bitter pill to swallow, would be even harder if I ordered the 128GB model.

In terms of the hardware, it’s very well made, very solid with no flexing.  The lack of a ethernet port is disappointing but the wireless is rock solid.  The screen is effective but certainly doesn’t wow me, if that makes sense.

The machine is very one of a kind right now.  The size and performance combo currently cannot be matched, but you are paying a premium for that combination.  If you don’t need the performance, you can get comparably built machines much cheaper ( such as the MacBook Air, or some premium Ultrabook models ) but you wont get the performance to play modern games or running demanding applications.  You can certainly get higher performance ( but currently not much higher with laptops ) at a lower price… but these machines certainly push the definition of “portable”.  This is to say nothing about build quality… I’ve owned a number of laptops and this is easily has one of the highest build qualities I’ve seen.

 

 

Dimensions and comparisons

Given that the machines dimensions are a big part of it, here are a series of comparison shots relative to other laptops I currently own.  It gives you a pretty good idea of it’s size.

 

Here is the 13” 2013 Macbook Air stacked on top of the Razer, on top of a Dell Studio 17, on top of a 15” Asus G53SX:

11

 

Here are the Asus, Razer and Macbook Air from above:

12

 

Now here are the Razer and Macbook from the side.

15

Front:

13

Back:

14

 

I’m not sure I buy the claim it’s thinner at the thickest part than the MacBook Air.

Totally Off Topic

28. June 2013

I have been following the Loom Engine since it was first publicly released.  I even did a five part guided tour of Loom Engine functionality, so this is one that I've been keeping an eye on.  One of the major aspects of Loom was it was layered over top of Cocos2D-x, for better or worse.

Loom
(Sadly, not that Loom)

 

In this release, that has has changed.

 

Loom Engine

The Loom Engine saw a huge amount of work this sprint. You will notice substantial gains in performance and stability.

We shifted to the new bgfx-based renderer this sprint, improving Loom2D performance substantially and setting the stage to support DirectX and other graphics APIs. Cocos2DX is now unsupported.

We have extended Loom2D with some new features and filled in some missing features: 
* You can specify z-sorting mode to have C++ sort large numbers of sprites for you. This is demonstrated in IsoVille.
center() method on DisplayObject to set the pivot point to the center of the DO.
* Keyboard input now works.
* Touch handling is much better.
* TMX loading/rendering works (now implemented in LS).
loom2d.animation package is ported.
* Text rendering/text input works!
* Hierarchical alpha works.

All package names are lower case now. If you run a sprint27 project under sprint28 you will see a lot of errors due to this; we recommend doing a replace-in-files to replace all your import Loom2D.Display. with import loom2d.display. and so on - this will get you up and running within minutes. Don't do it by hand unless you like menial labor! :)

Loom projects now inherit from loom.Application and do not require a main.ls any longer. Cocos2DApplication and Cocos2DGame and Application are all combined now.

Feathers is now a standard Loom library and available to use in your projects!

The profiler works, and also reports a lot of object allocation statistics. Use profilerEnable and profilerDump in the Loom console to start it and have it report results.

Porting Feathers (50,000 lines of AS3 code) drove major improvements to LoomScript. Wins include:
is/as/instanceof now are compliant with AS3/JS standards.
* Allow {foo: "bar"} style Dictionary literals.
* Added NaN and isNaN, and some useful constants on System.Number.
* Convenience for porting: try/catch/finally parse, but the catch/finally blocks are never run. throw triggers a Debug.assert. Vararg type specification is now allowed (but does nothing). new <String>[] syntax is now supported for initializing Vectors.
Array is now an alias for Vector.<Object>.
* Fixed crashes related to printing too-long strings with trace().
Vector.push() is now much more efficient for pushing a single item.
* You may reference properties via super, ie, super.x.
trim/split work properly now, and are much faster.
* Added Number.fromString.
* Added a Base64 utility class.
* ByteArray gains uncompress and the position property.
Stage gains a method to dump the DisplayObject hierarchy; it also has a bunch of nice new methods for dealing with scaling/native size.

Loom CLI

Loom CLI's loom new template was updated to use the new Loom2D APIs as well as package naming convention. Also the default Curse Font color was changed to Blue, as the white font tended to disappear on the default background.

We added new commands:
loom gdb Launches the current Loom project under gdb to help debug runtime crashes.
loom gdb compile Compiles the current Loom project under gdb to help debug compiler crashes.
loom android release Prepares a release-ready APK! It has options to set the keystore and signing settings.
loom init Set up the current directory to be a Loom project. Mostly useful for tool developers.
loom build android --unsigned was removed

You can add --verbose to any CLI command to get more log output.

CLI now explains why it asking for your system password to update on OSX.

So, Cocos2D is out and a custom C++ renderer is in.  Additionally they added support for the feathers UI library as well as TMX loading/rendering.  There are other changes as well as numerous bug fixes, mentioned in the release post.  Loom is no longer completely free, although they offer a free option and quite reasonable pricing.  Of course, if you signed up when I first linked it, it's still free for you.

News, Programming , ,

Month List

Popular Comments

CocoonJS 1.4 high performance JavaScript wrapper release. Accelerated WebGL support finally here
Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon


Home > News >

2. July 2013

Back in March I reported that Ludei was bringing WebGL support to their HTML5 performance wrapper, CocoonJS.  Today I received the following email:

 

The latest version of our Cloud and Launcher is available now! 
The wait is finally over! CocoonJS1.4 is NOW available in Google Play! We are still pending approval with the Apple App Store, so please check daily for its debut! This version includes the following awesome features:

  • WebGL support is now available! For the first time ever, publish your 3D games to iOS and Android devices!
  • Convenient 1-click Publishing to 5 App Stores -- bundles generated for: Apple, Google Play, Amazon, Chrome Store, Pokki
  • Improved Configuration Options for the Ludei Cloud Compiler
  • Updated Third Party SDKs -- advertisements, social integration and in-app payments
  • Improved Resources Management
  • Improved Audio Implementation that supports more HTML5 features
  • Improved webview support allowing you to develop HTML5 web apps while still having all our extensions available to monetize and make your game or app successful
  • And much more!! Click here to read the blog post!

 

This means you can now develop WebGL games and use Cocoon to deploy them to iOS and Android.  I am not sure if you ever tried running a WebGL application in a mobile browser… it's appalling.  None of the official browsers support WebGL, and the few that do ( Dolphin? ) got abysmal framerates.  So, if you want to run a high performance WebGL based game on mobile devices, CocoonJS is about your only option.

If you've never heard of CocoonJS, it's basically a high performance, striped down browser optimized for gaming.  It acts as a host for your game, so you bundle your game and Cocoon together to create an App Store deployable application.

 

In the same release, Ludei also announced:

Ludei Secures $1.5M in Funding 
We just announced that we recently received $1.5M in funding from key venture capitalists and angel investors, further validating the increasing industry support of HTML5 development. Click here to read more.

So you don't need to worry about they going anywhere sometime soon!

News , ,

blog comments powered by Disqus

Month List

Popular Comments