Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon
4. December 2015

 

Rarely do I weigh in on programming languages, I don’t think that C++ is better than Java, or vice versa.  Each fills a niche, even the much maligned Visual Basic was a very good programming language for what it did.

 

That all said, Objective C sucks.  I hated it, I hate it, I will always hate it.  Unfortunately until very recently it was the only game in town on iOS.  Well sure, you could use a 3rd party programming language like Java or C# and technically C and C++ were supported by Apple, if only weakly and in a half arsed manner.  But the official way, with all the tooling and documentation and other nice things programmers enjoy, it was ObjC or nothing.  Thankfully they recently released the Swift programming language.  Right after it was released I did a tutorial series on using Swift with SpriteKit and while not perfect, it was certainly a vast improvement over Objective C.  At the end of the day though, it was a single vendor and basically single platform language controlled by a company you’d have to be a bit daft to trust (with their developer track record…).

 

So yesterdays news came as a welcome surprise.  Swift is now open source. The source was released on Github under the Apache 2 license.  They also launched swift.org dedicated to the open source implementation of swift. 

From the Swift blog:

Swift is now open source. Today Apple launched the open source Swift community, as well as amazing new tools and resources including:

  • Swift.org – a site dedicated to the open source Swift community
  • Public source code repositories at github.com/apple
  • A new Swift package manager project for easily sharing and building code
  • A Swift-native core libraries project with higher-level functionality above the standard library
  • Platform support for all Apple platforms as well as Linux

Now anyone can download the code and in-development builds to see what the team is up to. More advanced developers interested in contributing to the project can file bugs, participate in the community, and contribute their own fixes and enhancements to make Swift even better. For production App Store development you should always use the stable releases of Swift included in Xcode, and this remains a requirement for app submission.

Swift.org

Swift.org is an entirely new site dedicated to open source Swift. This site hosts resources for the community of developers that want to help evolve Swift, contribute fixes, and most importantly, interact with each other. Swift.org hosts:

  • A bug reporting and tracking system
  • Mailing lists
  • A blog dedicated to the engineering of Swift
  • Community guidelines
  • Getting started tutorials
  • Contributing instructions
  • Documentation on Swift
  • Developer and API design guidelines

Swift.org is where the daily engineering work for Swift will take place, as the community of developers work together to bring Swift to new platforms, add new features, and continually evolve our favorite language.

Source Code

Apple has a new home on GitHub located at github.com/apple where you can find all the source code for the Swift project. The public repositories include the Swift compiler, LLDB debugger and REPL, the standard and core libraries, the package manager, and other supporting projects.

GitHub is already an incredibly popular place for developers to collaborate. It is easy to view the source code right on the website, or quickly check-out the code to your machine. And when you have a patch to contribute, we accept pull requests.

Swift Package Manager

Today we also launched a brand new project: the Swift Package Manager. This early-stage project will be developed in the open from the outset. The repository is in a very early state, and together we will define what a great package manager should do and how we can make it intuitive to use, and give it the power it needs to scale across the many platforms where we expect Swift to prosper.

Core Libraries

Apple has long provided a rich collection of frameworks that provide higher-level functionality commonly required across a wide variety of software. Frameworks such as Foundation, libdispatch, and XCTest make it much easier to write complex programs, and we wanted to be sure that developers get those same benefits as they take their Swift skills to new platforms. Whether writing apps for iPhone or Mac, or building a new cloud service on Linux, the Swift core libraries will give you building blocks you can count on.

Platforms

Open source Swift runs on a Mac, and is capable of building apps for OS X, iOS, watchOS, and tvOS. Swift.org also offers a Linux version of Swift, complete with a Linux toolset including package manager support, the LLDB debugger, and the REPL. We’re excited to see the community bring Swift to even more new places. As students and professionals learn to program in Swift, each new platform and use case opens new opportunities for them across the technology industry.

Getting Started

It is easy to get started. Swift.org hosts binary downloads of the compilers and command line tools for the Apple and Linux platforms so you can be up and running quickly. The latest version of Xcode supports an alternate toolchain option specifically designed to make it simple to try out the latest open source builds of Swift from within Xcode. And Swift.org has great getting started guides to walk you through the process of setting up your environment to work with open source Swift.

 

Let’s hope this gains traction, as anything that helps bury Objective C in the pages of history, is a very good thing indeed.

GameDev News


3. December 2015

 

Having never used or even heard of sketch based animation you can’t help but feel like a “someone changes something in the matrix” moment, when not one but two stories cross your desk in the same week.

 

The first was release of VPaint Beta 1.5.  It is in their own words:

VPaint is an experimental vector graphics editor based on the Vector Animation Complex (VAC), a technology developed by a collaboration of researchers at Inria and the University of British Columbia, featured at SIGGRAPH 2015. It allows you to create resolution-independent illustrations and animations using innovative techniques.

Or you can watch the SIGGRAPH video:

I checked out the free download, and it is interesting, but I decided not to do a story about it.  Then…

 

Just today, Autodesk announced they are looking for beta testers for Project Draco, which is an iPad app that sounds a hell of a lot like VPaint.  Here is their (year old) SIGGRAPH video:

 

Well now Autodesk is officially ready for testing, so if this looks interesting to you head on over to Autodesk labs to sign up.

 

Are there any other sketch based 2D animation packages in the works?  Anyone excited for this technology to mature?

Art GameDev News


3. December 2015

 

BabylonJS is a popular 3D game engine for WebGL that I covered back in the spring.  Today Sébastien Pertus at Microsoft announced the release of a project generator available on npm:

 

Today I want to share with you a new project I work on those days. The idea is to bring you a new tool to generate code for BabylonJS

Imagine you want to create a quick project with BabylonJS. You have to create a project, reference BabylonJS, create a simple scene, add assets and so on.

It’s straightforward, but we can do better…

BabylonJS Generator is a npm package based on Yeoman to provide you a simple way to create a BabylonJS project, hosted on node.js

Yeoman generator is already used with a lot of project (angular, webapp, wordpress, asp.net, office addins and so on …)

Check the generators here : http://yeoman.io/generators/

The Babylon generator

Installation

First, install Yeoman and generator-babylonjs using npm (we assume you have pre-installed node.js).

This step has to be done only one time. The “-g” argument will install those packages globally to your computer.

npm install -g yo

npm install -g generator-babylonjs

From now, you can generate your new project with this simple command :

yo babylonjs

 

GameDev News


2. December 2015

 

Today on the Xamarin blog, they announced the release of Urhosharp.  You may recall I covered Urho3D a while back in the Closer Look at Series.  From the announcement:

Building 3D experiences and games using a high-level framework that works across all of the major platforms is now as easy as installing a single NuGet package.

UrhoSharp brings the Urho3D game engine to C# and F# developers targeting Android, iOS, Mac, tvOS, and Windows. It delivers scene management, a component-based architecture, actions, animations, 3D and 2D physics, audio, mesh navigation, and networking richly blended into .NET with all of the idioms that you’ve come to know and love.

To learn more, check out our introduction to UrhoSharp, take a look at oursamples, or add a level or challenge to SamplyGame, our homage to ShootySkies written in UrhoSharp.

From the introduction:

UrhoSharp is a powerful 3D Game Engine for Xamarin and .NET developers. It is similar in spirit to Apple’s SceneKit and SpriteKit and include physics, navigation, networking and much more while still being cross platform.

It is a .NET binding to the Urho3D engine and allows developers to write cross platform code that can target Android, iOS, Windows and Mac with the same codebase and can render to both OpenGL and Direct3D systems.

UrhoSharp is a game engine with a lot of functionality out of the box:

 

Between Urhosharp and Atomic Game Engine, Urho3D derived engines are certainly becoming more common these days!  You can get the SDK on nuget here.

 

EDIT: User /u/marynate on reddit’s r/gamedev noticed the license for Urhosharp

You may only use the Software, as expressly permitted herein, in conjunction with Your Primary Xamarin Software. As used herein, “Your Primary Xamarin Software” means Xamarin.iOS software or Xamarin.Android software that is both (a) covered by a separate valid Xamarin software license agreement under which You are the licensee (Your “Primary Xamarin License”) and (b) for which You have acquired an Indie license, Business license, or Enterprise license under Your Primary Xamarin License.

So basically they took an open source project and tied it to using their commercial product.  Bad form Xamarin, bad form.

 

EDIT2: Xamarin have fixed the license and it is now released under the MIT open source license.

GameDev News


1. December 2015

 

Autodesk just announced the release of Extension 2 for 3ds Max 2016.  Extensions are interim updates between major releases.  Extensions 2 adds the follow functionality:

  • With fundamental improvements in the Max Creation Graph (MCG), users can now animate accurate simulation data like Computational Fluid Dynamic (CFD) data or other data inside their 3ds Max scenes. 
  • With the new built-in “Send To” Autodesk Print Studio button, users can quickly export and 3D print any of their 3ds Max creations. 
  • The new Texture Object Mask modifier allows users to position and animate textures on an object using other objects in the scene. 
  • The new TextPlus feature, introduced in Extension 1, now has the ability to use text strings and shapes to be used as a material map, creating material decals in your scene.  

They have created a video showcasing the new capabilities:

Read more at the official announcement.

GameDev News


AppGameKit Studio

See More Tutorials on DevGa.me!

Month List