Visual Studio 2013 is now.... free?

12. November 2014

 

This one falls under the category of “extremely awesome news”, Microsoft just announced Visual Studio Community 2013 and it’s completely free.
 
You may think to yourself… big deal, there is already Express and it’s free too.  Unlike Express however, Visual Studio 2013 Community is actually the complete version of Visual Studio, nothing has been stripped out.
 
Here is the announcement from the Visual Studio blog:
 

Visual Studio Community 2013 is a new edition that enables you to unleash the full power of Visual Studio to develop cross-platform solutions. Create apps in one unified IDE. Get Visual Studio extensions that incorporate new languages, features, and development tools into this IDE. (These extensions are available from the Visual Studio Gallery.) Find out more details about Visual Studio Community 2013  here.

Download Visual Studio Community 2013.

What's in Visual Studio Community 2013 

  • Professional-grade editing, code analysis, and debugging support 
  • Support for open-source workflows (Git)
  • Compilers for managed languages, C++ and more
  • Cross-platform mobile development for your preferred device and platform, including the web, Android, iOS, and Windows Phone with the free Visual Studio Tools for Apache Cordova extension
  • Take advantage of cloud services with simplified Azure SDK integration, and incorporate modern app analytics and telemetry with Application Insights
  • Access to all the Visual Studio 2013 extensions on the  Visual Studio Gallery
  • Visual Studio Community 2013 includes Update 4, which is a cumulative update of all previous Visual Studio 2013 updates

Watch the  Visual Studio Community 2013 video to learn all about what you can do with this release:

Introducing Visual Studio Community 2013 

Several other Visual Studio 2013 products are available for download with Update 4, including the following:

  • Visual Studio 2013 Update 4 
  • Azure SDK for .NET 2.5 
  • Visual Studio Tools for Unity (VSTU) 2.0 Preview 
  • Kinect for Windows 2.0 SDK RTW 
  • Visual Studio Tools for Apache Cordova CTP3 
  • TypeScript 1.3 

To get more details on these releases, go to the  release notes for Visual Studio 2013 Update 4.

 

So, what's the catch? There's always a catch, right?

 

Yes, there is a catch, but it’s a pretty generous one.  From the Community page:

 

Q: Who can use Visual Studio Community? 
A: Here’s how individual developers can use Visual Studio Community:
  • Any individual developer can use Visual Studio Community to create their own free or paid apps.
Here’s how Visual Studio Community can be used in organizations:
  • An unlimited number of users within an organization can use Visual Studio Community for the following scenarios: in a classroom learning environment, for academic research, or for contributing to open source projects.
  • For all other usage scenarios: In non-enterprise organizations, up to 5 users can use Visual Studio Community. In enterprise organizations (meaning those with >250 PCs or > $1MM in annual revenue), no use is permitted beyond the open source, academic research, and classroom learning environment scenarios described above.

Q: How does Visual Studio Community 2013 compare to other Visual Studio editions? 
A: Visual Studio Community 2013 includes all the great functionality of Visual Studio Professional 2013, designed and optimized for individual developers, students, open source contributors, and small teams. 

So, basically if you are part of a team with 5 or fewer members, and made less than a Million dollars last year… Visual Studio is now completely free.

 

Merry XMas!

News




Steam Powered GameDev: A New Series on Gamefromscratch

10. November 2014

 

If you are a Steam user, you may have noticed that game development related tools have been popping up with increasing frequency.  From 2D and 3D art packages, to script writing utilities and complete game engines, Steam is becoming increasingly Steam Logo mportant to indie developers.  Not just as a place to sell their games, but as a source for the tools to make them.  Also, and this is no small point, software on Steam tends to be a hell of a lot more affordable, especially with the frequent sales that occur.

 

As a direct result, I am going to start a new segment here on GameFromScratch, covering game development tools available on Steam.  Right off the bat I am going to be looking at a pair of products, Fuse, then Substance Painter.  For each product covered, I will do both a text and video overview.  They will essentially be reviews, but without a score ( I am not a huge fan of scores, except for meta ratings ).

 

I will also favour products that are on sale, when I get the opportunity.  This has a two fold purpose.  First off, it’s products that are on sale that generally draw the most attention.  Second, it’s a lot easier on my pocket book.  On the same topic, if you make a game development tool that is available on Steam that you wish to see covered, sending me a key will certainly increase the odds I will look at it, although it won’t influence my conclusion in any way.

 

Is there a particular product on Steam that you’ve always been interested in learning more about?  Got a product that’s available on Steam that you would like me to review?  Either way, let me know!  Hope this series proves to be interesting and useful.

News




Copperlicht 3D JavaScript Game Engine is now free and open source

8. November 2014

 

Amber have just open sourced Copperlicht, a WebGL 3D JavaScript engine.  Copperlich was previously available for 99 Euro per year.

Logo

 

Here is an overview of Copperlicht’s functionality:

  • 3D World editor: CopperLicht comes with a full 3D world editor named CopperCube.
  • Many supported 3D file formats: 3ds, obj, x, lwo, b3d, csm, dae, dmf, oct, irrmesh, ms3d, my3D, mesh, lmts, bsp, md2, stl, ase, ply, dxf, cob, scn and more
  • Built-in Collision detection: Throw a polygon soup into the engine and walk around the 3D world.
  • Lots of 3D graphics features, see below.
  • Incredibly fast: CopperLicht is highly optimized and able to render and animate even huge 3d scenes.
  • Character/Skeletal animation: supports playing back animated meshes with an unlimited amount of joints and an unlimted amount of weights
  • Simple to use: easily understandable SceneGraph API with lots of tutorials and examples in the documentation
  • Binary compilation: Unlike other WebGL 3D Engines, CopperLicht compiles your 3D meshes into a small, binary file which downloads quickly, reducing bandwith usage for your users. Simply import your 3D files into the CopperCube editor and publish it as CopperLicht scene.
  • Totally free: CopperLicht is free to use. And open source. Just download and go!

 

You may notice the strike through that Copperlicht includes a 3D world editor; this isn’t entirely true with the open sourced version.  There is a commercial editor available named CopperCube, however it is a commercial product

 

I have to say, I like this move.  You can create a full game using Copperlicht without the editor, while the editor is available on a 14 day trial.  This means people can contribute to a Copperlicht project without paying money, but there is a value add sell that means the developer can eat!  I hope this will result in an increase in popularity for Copperlicht that in turn increases sales for Coppercube, which would be win/win.  I personally would like to see the demo extended to 30 days, or preferably be 14 actual days, not 14 calendar days.

 

This announcement is quite timely, as I just recently had this conversation on Twitter:

 

TwitterDiscussion

 

I feel almost prescient!

 

This is a slightly different business model, but one I firmly support.  On the whole I think this is a great change.  I have used Irrlicht in the past and was impressed by the engine.  Now I am going to look closer at Copperlight and possibly due a tutorial series on it in the future.  Now that Copperlicht and Coppercube are a bit less intwined, I wonder if Coppercube could move to being more agnostic and be of use to say… Three.js or Turbulenz.

 

Are you at all interested in hearing more about the Copperlicht engine here on GameFromScratch?

News , ,




C# comes to Unreal Engine

24. October 2014

 

On a daily basis I use dozens of different programming languages.  Some languages are certainly better than other languages at certain tasks, while other languages truly shine on certain platforms.  Some languages are more portable than others, others are more customizable while some can be faster.  All that said, when all other things are equal and I need to just pick a language, the one I go to is generally C#.  C# just strikes that right balance for me, straddling the line between low level and productivity, convenience and speed, functional and procedural, for me at least.  This news then is welcome, for me at least. :)

 

Xamarin, the maker’s of Mono, a cross platform open source version of the .NET runtime and framework (Perhaps most famously known as the language technology that underpins Unity)  have announced they are bringing it to Unreal Engine.  Here are some of the features and benefits of Mono for Unity:

 

Hot Reload

 

We fully support Unreal Engine's Hot Reload functionality.

This means that whenever you rebuild your C# code in Xamarin Studio, your changes are immediately reloated into the Unreal Editor. The changes are also reflected with running games in the editor, so you can quickly iterate on your design.

On fast machines, the process of rebuilding the C# code and reloading it live takes less than a second. It feel instantaneous.

 

Xamarin Studio

While hard core hackers are happy editing their game code with vi or emacs and have the hot reload functionality do all the work for them, we have also provided a nice integration with the MonoDevelop (and Xamarin's branded version, Xamarin Studio).

It provides a first-class IDE with rich, accurate code completion, and powerful refactoring and analysis tools.

 

Debugging

Full support for C# debugging is included. Simply launch your game from Xamarin Studio as a standalone editor or mobile preview process, and it will connect to the runtime debug engine, giving you full access to a rich suite of abilities to inspect and debug your code.

Seamless Blueprint and Editor Integration

Your C# classes that are exposed to Unreal Engine are fully accessible from Blueprint and the Unreal Editor, just like Blueprint-accessible C++ classes.

You can continue using Blueprint for simple logic and use C# when things get more complicated.

And you can consume your C# classes from Blueprint.

 

Mixed C#/C++/Blueprint Solutions

The same tool that we use to generate bindings to Blueprint-exposed Unreal Engine APIs is integrated into Unreal Build Tool, and will automatically generate bindings to all of your Blueprint-exposed C++ gameplay code and engine modifications.

 

Native Access

In addition to the automatically generated bindings to Blueprint-exposed Unreal C++ code, the Mono runtime allows accessing any native APIs, including custom C/C++ code and the native platform API.

You can manually bind C APIs using Platform Invoke services, or use CppSharp to generate bindings to C++ APIs.

 

Async Programming

The Getting Started tutorial shows the low-level approach to defining behaviors, but this approach can become cumbersome when defining more complex behaviors and AI. Luckily, this task can be simplified with async programming, a C# compiler feature that rewrites what appears to be linear code into a state machine.

For more details about how this helps writing complex gameplay logic, see our overview of async programming.

 

API Profile

The Mono Mobile Profile is the core API profile in the support for Unreal Engine.

The Mono Mobile Profile removes a number of bloated .NET features including System.Configuration support from the Base Class Libraries. This is the same API profile used by Xamarin's Android, iOS and Mac products.

Note: The Mobile Profile is not ABI compatible with existing assemblies compiled for a different profile (like the .NET desktop, Silverlight or Windows Phone). You mustrecompile your source code to generate assemblies targeting the Mobile profile.

A full list of the assemblies in our Mobile framework profile can be found here.

 

Portable Class Libraries

You can use Portable Class Libraries with Xamarin's Unreal Engine support. This allows the same binary library to be shared across a wide range of platforms without code modifications.

To learn more about using Portable Class Libraries with Xamarin, read our Introduction to Portable Class Libraries document.

 

There are a couple limitations.  It’s based on .NET up to 4.5, with a smattering of .NET 5 features.  Well, anync, which is frankly the .NET 5 feature.  Perhaps the biggest limitation is it only has access to code from the Blueprint API.  Given that the Blueprint API has access to just about everything C++ does, this isn’t perhaps the limitation it sounds like.  If you want to make more C++ accessible to .NET you need to use CppSharp.  Additionally, Unreal AND Mono need to be available on the targeted platform, although frankly, Mono is available just about everywhere these days.  However, right now only Windows and Mac are supported, with other platforms under development.

 

Oh yeah, there is of course one other big side effect… money.

 

To redistribute code written with Mono for Unreal Engine, you must have a commercial license to the Mono runtime. These licenses are available from Xamarin for Mac, Android and iOS online, and you can request Windows licenses through support.

 

This of course is completely reasonable.  People make their money selling software, so obviously they have to sell their software.  That said, I’ve always found Xamarian’s licensing to be a bit awful.  There are almost unique in the development world for not offering a (real) free version for non-commercial development and this is a huge mistake IMHO.  The lack of a free edition makes open source software around their tools pretty much non-existent.  Of course you can open source work made with Xamarian tools, but good luck building a community around a commercial only development product.

 

That said, this is still an interesting development and one more feather in Unreal Engine’s cap.  Given that Unity is moving away from Mono and developing their own runtime, it’s not entirely shocking that Xamarin made this move.  It is somewhat ironic that the Unreal Engine .NET runtime will be substantially newer and more complete than Unity’s!

News , ,




CopperCube ‘no programming required’ 3D Engine Version 5 released

1. October 2014

 

Version 5 of the CopperCube engine was just released.  In their own words, CopperCube is:

 

CopperCube is an editor for creating 3D apps, games and 3D websites. Import or create your 3D models, set camera controllers, materials, behaviors, click 'publish' and your app is ready. Create everything from simple model viewers to full 3D games. As WebGL websites, Flash .swfs, Mac OS, Windows, or Android apps. You can do all this without programming.

 

 

The following are the release notes of the new features in Version 5:

 

  • Terrain support

The editor now includes a way to create and edit terrain. There is also a terrain generator, completely with trees and grass. Terrain can be drawn with height painting tools directly in the editor, textures can be painted quickly with automatic texture blending into the terrain. There are also tools for placing grass and bushes, and for distributing meshes automatically over the terrain.
terrain support terrain rendering

  • Physics engine
    It can be switched on for the Windows and Mac OS X target in the publishing settings. There is also a new behavior available named 'Move object by physics engine' for making objects behave, collide and move like objects in the real world. Objects with the 'Collide when moved' behavior will also collide against those then and be able to move them, roll them over etc. There is also a way to react when an object collides with the world, for example to play sounds, and a way to manually apply forces to objects using scripting.
    physics simulation
  • Video Playback in 2D and 3D
    The professional version of CopperCube now includes an action to play back videos on the Windows .exe, WebGL and Flash target. Videos can be played back in 2D and 3D (like on any 3D object in a scene), it is possible to influence playback with actions (play/stop/pause) and to react when the video playback has been finished or playback failed.
    video playback
  • Network communcation
    You can now easily do HTTP requests on all targets, in order to exchange data with game multiplayer servers, PHP/MySQL database backends, or whatever you like to. This feature is available as new JavaScript function named ccbDoHTTPRequest(), but there is also an action for doing this without programming for download from the website. This feature doesn't directly provide multiplayer support for your games, but it is now possible to build this yourself on top of this.
  • Added iOS 8 WebGL support
    Apps created with CopperCube and the WebGL target now also run on Apple devices (iPhone, iPad, ...) with iOS 8.
    running on iphone and ipad
  • Shader programming
    You can create and add your own materials and shaders during runtime now using the JavaScript API. In the documentation, you will find a few examples showing you how to start. Note that this is nothing simple, and not for beginners. You need to know shader programming in order to use this feature.
    shader programming
  • Animation blending
    CopperCube now blends animations when switching between them. It is automatically enabled, but can be turned off or adjusted for every animated model manually in the editor or via script. This also means that you don't need to create perfect animation loops anymore. The engine will now automatically blend non-fitting animation loops together so that they look nice.
  • Attaching nodes to animated meshes
    This is useful for example to let characters carry weapons in their hands, to switch them dynamically, change how they look like, or for example to even attach particle systems to moving parts of an animation. Use the command "Modify Selection -> Attach node to animated joint..." for this.
    attaching to animations
  • Directional light
    This is useful for simulating light sources from a very far distance, like for simulating the sun. Directional light can now be used just as the already supported point lights both with the light mapper as well for dynamic lighting.
    directional light
  • Procedurally generated trees
    There is a new scene node type available which generates a tree (a 3d model of a plant) based on user specified parameters. It is possible to create all kind of tree types from it, be it for example a full grown pine or a dead desert bush. This feature is beta, and not very user friendly yet, but planned to be improved in future versions.
    generated trees
  • Faster Lightmapper, with Mac OS X support
    The built-in lightmapper has been rewritten and is now much faster. Additionally, it now also works with shadows on the Mac OS X version of the editor, wich previsously only produced results with diffuse lighting only.
    lightmapper of coppercube
  • Optimized WebGL performance and compatibility
    Not only did we squeeze all these features into a tiny, 180KB .js file, we also improved the performance again by about 20% in certain areas, and improved compatibility with mobile and/or touch enabled WebGL capable browsers such as Chrome for Android.
  • Custom Icons for Windows Apps
    There is now a new option to select an icon for the windows target. Note that embedding the icon in your app might slow down the publishing process by a few seconds, depending on your operating system. (This feature is not supported in the Mac OS X version of CopperCube)
  • Manual Commands for the AI
    Use the function ccbAICommand() for this, so you can send any "Game actor with Health" to a specific location, command it to attack something, or similar.
  • 15 new prefabs
    15 new prefabs added: 2 new animated characters (a soldier; a sleep walker), 2 weapons to be attached to animated characters: a shotgun and a pistol, 11 high quality, low poly prefabs created by Efe: a classic car, a bicycle, an armchair, an ancient statue, a book, a nightstand, a flowerpot, a lamp, two tables, a television.
    prefabs
...and many other changes:

 

  • There is now a new command for converting a static mesh to an animated mesh (without animation). This is useful for ditributing huge amounts of static meshes over the terrain without much memory usage, since instances of animated meshes share their data and are culled more efficiently.
  • New, better looking examples come preinstalled with CopperCube now.
  • The 'object controlled by keyboard' behavior now has a more fine tuned animation playback system
  • The 'object controlled by keyboard' behavior now has the option to 'pause' after jumping, making the jumping feature look more like in some platform games.
  • The gravity value is now set per scene, in the root object of the scene.
  • Jumping in all behaviors is much nicer and more physically correct now. But this also means that you might have to adjust your jump settings in existing projects when upgrading to CopperCube 5.
  • Game AI movement is more smoother now
  • Scripting changes: New functions:
    • ccbCreateMaterial()
    • ccbSetShaderConstant()
    • ccbAICommand()
    • ccbSetPhysicsVelocity()
    The following functions are now also available in the editor:
    • ccbGetCollisionPointOfWorldWithLine()
    • ccbDoesLineCollideWithBoundingBoxOfSceneNode()
    Changed behavior:
    • ccbEndProgram() now closes the window in WebGL and Flash
  • When cloning nodes in the editor, also children will now get unique names and ids, and relinked with the behavior of the parent
  • 3D Editor change: When changing the parent child relation of a node, the position of the node is tried to be kept at the old position
  • 3D Editor change: When moving an object which is the child of a rotated parent object, movement will still move into the direction the arrows are pointing
  • When right-clicking onto a texture in the texture browser, there is now a command to save the texture as file to disk.
  • It's possible to use the mouse wheel in the prefabs window
  • Removed feature: It is no longer possible to target Flash players older than version 11
  • When switching the perspective, orthogonal views now place the camera more nicely.
  • The path tool new works a bit nicer when adding new path nodes.
  • Lots of updates to the documentation.

 

A trial version is available for both Windows and Mac.

News ,