Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon

16. June 2018


Perhaps you are a bit artistically challenged, or you are looking for resources to prototype your 3D games?  Where can you find the best free 3D models?  This page is a collection of some of the best resources for 3D models with permissive licenses.   If I’ve missed a resource you use, please let me know in the comments down below.


If you are using a game engine, specifically Unity and Unreal, both host several free models for download.  Generally the license limits you to use those assets in those engines.  Also keep in mind that you will see these assets commonly in asset flips due to their direct integration with their collective game engine.  Also be careful to respect copyright laws.  Just because you found a freely available Boba Fett model with a commercial license, doesn’t mean you can use it in a commercial project!  Existing copyright and trademark laws still apply.


Sites



Unity Asset Store

To limit to just free models, go to the 3D category and search for something.  You can then filter by price, including $0 as an option.

Unreal Engine

The Unreal Engine asset store is a fraction of the size of the Unity store.  The majority of free content is directly from Epic, but is of an exceedingly high quality.  The above link searches for just free content.  Products are freely usable in personal and commercial projects as long as you use Unreal Engine.

TurboSquid

TurboSquid is one of the oldest model resources on the internet and has a huge collection of free assets.  The link above links directly to the free models, you can then filter down by addition requirements (rigged, poly count, etc)

OpenGameArt

OpenGameArt is a repository for free assets aimed at game developers.  The above link is directly to the 3D objects section.  This is an non-curated collection, so quality varies massively.

BlendSwap

This site is dedicated to Blender and contains tons of Creative Commons licensed resources.  You are given a daily download limit if not a member, although a free login option exists.

SketchFab

Sketchfab is quickly becoming the place to demonstrate your artistic abilities, with full WebGL previews available.  The above link is for resources tagged as free and downloadable.  Unfortunately their search interface makes searching for free assets needlessly complicated.

Google Poly

Google Poly is a resource for free 3D objects, with VR/AR in mind.  Models tend to be low poly and flat shaded instead of textured.

CGTrader

CGTrader is another online game marketplace with a large number of free downloads available.  The above link is for free assets only.  Be careful of licenses, royalty free licensed assets can be used in commercial projects, while editorial licenses cannot be used in commercial products.

Remix3D

This is the Microsoft alternative to Google’s Poly.  It’s aimed at Paint3D usage, so you have to open first in Paint 3D (a free Windows 10 only application), then export to a format such as FBX.

NASA

Yeah, that NASA.  They have a large collection of space related models and textures available.  Granted  a very niche collection, but invaluable if you are making a space related game.

Clara.io

Another site with a huge archive of free 3D models for download.  Currently over 130K models on the site.

Yobi3D

Yobi isn’t a model site, it’s a search engine that searches free sites.  It searches several different free sites.  Be aware the license varies from site to site, so be careful before using results in a commercial project.


Art ,

14. June 2018


Autodesk have announced the new features in the 3ds Max 2019.1.  The update includes massive performance improvements to Open Shading Language (OSL), up to nearly 100x faster than 2019.    Alembic support has also been improved in this release, including the ability to preview contents of an alembic file before you import it.  A summary of new features in this release:


Alembic file import and export
Improvements to Alembic files include being able to preview the contents of an Alembic file prior to import, Alembic Helper icons are resizable and can be toggled, and 3ds Max Object Properties and Custom Attributes can be imported and exported.

Fluids
Improvements include the new Channel Field Object that lets you manipulate specific properties within your simulation, and the boundary controls and Volume helper, which are used to limit areas of effect. You can also now disable specific emitters, colliders, foam masks, kill planes, and motion fields on a per solve basis.

OSL (Open Shading Language)
Open Shading Language performance improvements include improved rendering performance for complex shaders, especially with Scanline renderer; improved viewport representation with native support for over 80 of the included OSL shaders; most user-created procedural OSL shaders can now be viewed in the viewport; and the OSL Editor has been improved, including font customization.

Shared Views
Shared Views improvements include support for all bitmap types, the ability to render and upload most procedural textures (including OSL shaders), the ability to resize textures on upload, support for Shell material, and arbitrary UV channels (limited to 1).

Project
Switching between projects is now more manageable with the new Projects toolbar, that lets you easily see your project folder and switch between folders. Also, the Projects menu now has a checkbox allowing you to toggle the ability to automatically switch between projects.

General improvements
General improvements include archiving and scene file compression now supports large data sets (greater than 2GB), Vault users can check large files in and out as well as auto-login, FBX can now export animation without needing to include geometry, and attaching large meshes can be up to 7 times faster.


The full release notes of this release are available here.


GameDev News

13. June 2018


Godot Engine just got a new release, 3.0.3.  This is primarily a maintenance release, composed mostly of minor improvements and bug fixes.  Hands down the biggest new feature in Godot 3.0.3 is that exporting to all desktop platforms now works for Mono/C# projects.  Please note, this release does not yet include the Android APK fix and you will have to continue using the manual tool until Godot 3.0.4 is released with a full fix.

WARNING!

You must have Mono 5.12 or later installed if you are using the Mono/C# version.  Apparently this is causing crashes on start up for many users.  Additionally if you are on MacOS and use Homebrew for package management, it seems the version of Mono they distribute is out of date, requiring you to manually download the most recent versions.

Other details of the release from the release announcement:

What's new in this release

Here are some of the highlights of this release. See the full changelog for details.

  • Mono: Exporting to desktop platforms now works.
  • Universal translation of touch to mouse.
  • print_tree_pretty() was added allowing a graphical view of the scene tree.
  • Vector3::round(), Vector2::round(), and Vector2::ceil() methods were added.
  • Dynamic fonts can now have a hinting mode set.
  • Restore purchases feature for iOS.
  • AudioStreamPlayer, AudioStreamPlayer2D, and AudioStreamPlayer3D now have a pitch scale property.
  • Show origin and Show viewport setting in 2D editor.
  • You can now set Godot windows as 'always on top'.
  • --print-fps options to print FPS to stdout.

Fixed issues

Here are some of the highlights of this release. See the full changelog for details.

  • Mono: Signal parameters no longer crash the engine.
  • Asset library thread usage, this makes the asset library more responsive.
  • Several GLTF import fixes.
  • Several memory leaks were plugged.
  • iPhone X support.
  • Several fixes to audio drivers (WASAPI and PulseAudio).
  • Several crashes were fixed.
  • Export PCK/ZIP now works again.

If you are interested in learning more about Godot 3, be sure to check out our ongoing Godot 3 tutorial series.


One major push behind this release was to enable C# developers to be able to participate in the Godot Community Game Jam, starting Friday, June the 15th.  Godot game theme voting is occurring here.

GameDev News

13. June 2018


With Apple’s recent unfortunate decision to deprecate OpenGL support in iOS and Mac OS moving forward this will be the end to the only graphics API that worked natively across all platforms.  I think many developers would be willing to ignore the Mac OS market, but the iOS market is just too big for most people to ignore.  What then are theImage result for opengl logo alternatives to using OpenGL?  In this article we are going to look at exactly that topic.


Use a game engine and let them worry about it!

This is the category probably the majority of developers are going to fall under.  If you use an engine like Unity or Unreal this entire thing becomes a non-issue.  These engines generally already support a number of different rendering options, including native Metal support.  For other small or open source engines such as Godot, CopperCube, Shiva, Cocos, etc this is a bigger problem as they now potentially have to dedicate more time, money and/or resources to support yet another renderer… or drop support for Apple platforms completely.  Unless they rely on some kind of abstraction layer for rendering, life just got a bit more annoying for every single game engine manufacturer that previously supported Apple platforms.

The following engines have Metal support out of the box:

  • Unreal Engine
  • Unity
  • Lumberyard
  • Armory(via Kha)
  • Stingray (now defunct)


Use Vulkan + MoltenVK

A lot of game developers and engine developers specifically were planning to, or already have, implemented Vulkan rendering support.  Vulkan is a lower level alternative to OpenGL, from Khronos Group, the same people behind OpenGL.  Like Direct3D 12 and even Apple’s Metal, Vulkan is designed in a closer to the hardware manner, to better maximize new graphical functionality in modern GPUs.  Working in Vulkan takes a lot more effort than working in OpenGL or similar higher level APIs, but it is cross platform much the same way as OpenGL was.   The catch…  it doesn’t work on Apple products.   Ugh.  Ok, how then is this a solution?  We there is a product called MoltenVK that enables Vulkan to run on Apple’s Metal.  


Use an Abstraction Layer

Another option I’m really partial too… letting someone else do all the work!  There are a handful of low level cross platform graphics APIs that take care of the work for you.  So if you don’t want to use an existing game engine, but also don’t want to deal with rendering intricacies for each platform, this could be a great option.  Well will discuss available cross platform layers.


bgfx

A cross platform “bring your own engine/framework” graphics rendering layer with bindings for several programming languages an renderers, including Metal ( and OpenGL, Direct3D, WebGL and more).  No Vulkan support however, at least not yet.


kha/kore

Kore is the open source C framework that kha is built on top of.  Kore supports a ton of renderers including metal.  You can learn more about kha in this video.


ogre

Ogre straddles the line between game engine and framework.  Either way, ogre3d has a metal renderer for iOS and MacOS.


The Forge

This one is fairly new to me, it’s a cross platform rendering framework that also supports Metal.


Veldrid

Veldrid is a .NET based rendering and computer library that supports Metal (as well as VUlkan, D3D11 and OpenGL, GL ES).  I have no personal experience with this library and it seems somewhat young from a developmental perspective.


SDL… maybe?

There are mutiple mentions and forks of SDL for supporting Metal.  I’m not sure if any are complete or still supported.


Implement A Metal Renderer

Of course you’ve always got the option of buckling down and implementing a Metal renderer for MacOS and iOS platforms.  Of course your work will only be useful on Mac/iOS platforms.  If you are interested in learning more about Metal you can learn more here.


Stick with OpenGL

Of course you’ve always got the option of just sticking with OpenGL.  Deprecated doesn’t mean it wont run on existing devices, just future ones.  Publish your game as it is now and let Apple deal with the fallout of their bad business decisions.


Programming ,

12. June 2018


Haxe 4.0 got one step closer with today’s release of Haxe 4.0.0 preview 4.  The release focuses heavily on improved compiler display services that will enable better editor support in IDEs such as Visual Studio Code.  Change will support auto imports, override completions, structure field name completion and more.  The Visual Studio code extension has already been updated to support the new Haxe 4.0.0 functionality.


Details of the release:

Improved compiler display services

Our focus for this release has been compiler display services. We implemented a new, JSON-RPC-based protocol which is utilized by the vshaxe Visual Studio Code Extension to provide a variety of new features:

  • Support for auto-import
  • Completion on override |
  • Completion for structure field names
  • Support for auto-generating structure declarations, functions, switches and more
  • Context-aware, sorted toplevel completion
  • Reference finding which explores modules that are not necessarily part of the compilation

Improved enum abstracts

Enum abstracts now get the treatment they deserve with a proper enum abstract syntax. Furthermore, values can now be omitted if the enum abstract is defined over Int or String:

enum abstract MyEnum(String) {
    var MyValue; // implicit = "MyValue"
}

enum abstract MyOtherEnum(Int) {
    var MyValue0; // implicit = 0
    var MyValue1; // implicit = 1
    var MyValue5 = 5;
    var MyValue6; // implicit = 6
}

Various syntactic improvements

  • extern is now recognized as a field-level modifier and can be used instead of @:extern
  • Metadata names can now use dots, e.g. @:haxe.json becomes a metadata entry named "haxe.json"
  • Structure fields now consistently allow var ?x and final ?x, meaning the same as @:optional var x
  • Type1 & Type2 is now a recognized syntax for intersection types. For the time being, it is only supported to merge structures (replacing the { >Type1, >Type2, } syntax) and for type parameter constraints (replacing T:(Type1, Type2) which has been removed from the language).

Be sure to check the change log for a complete list of changes and bug fixes in the release.  You can download Haxe 4.0.0 p4 right here.  If you are interested in developing games using the Haxe programming language be sure to check out our new Armory tutorial series or our HaxeFlixel tutorial series available here.

GameDev News

Month List

Popular Comments