Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon

6. December 2016

 

A couple years ago I did a detailed text tutorial on how to use a debugger which oddly is a massively important skill that simply isn’t taught.  Given that this article is still popular two years later I’ve decided to follow it up with a video version.  This video, Debugging 101, walks through the basic tasks involved in debugging.  It used Visual Studio 2017 and C++ but should be applicable in most languages and IDEs.  The video shows how breakpoints and conditional break points work, how to step into, over and out of your code, how to use the local and watch window, call stacks, how to do memory debugging and more.  Basically the video shows you how to get started using a debugger.

 

The following is the code used in this example.  There is nothing special to this code, it’s extremely contrived, but it enabled me to show the various features available in most debuggers.

#include <iostream>

// These two functions are used to illustrate how the call stack works
// As well as how step into and step out of behave.
int innerFunction(int input) {
	int meaninglessCounter = 0;
	for (int i = input; i > 0; i--) {
		// First show stepping through the loop
		// Set a conditional breakpoint that breaks when i is a certain value.
		meaninglessCounter++;
	}
	return input;
}

int outerFunction() {
	int i = 42;
	return innerFunction(i);
}


class Demo {
	std::string stringValue;
	int intValue;
	bool booleanValue;

	public: 
		Demo(std::string a, int b, bool c) : stringValue(a), intValue(b), booleanValue(
		c) {};
};

int main(int argc, char ** argv) {
	// Callstack demo, jump into, jump over example
	int someVal = 0;
	someVal = outerFunction();

	// Data example -- simply create a char buffer, fill it with 'a' then null 
	terminate it so 
	// it can be treated like a string.
	char * data = new char[1000];
	for (int i = 0; i < 1000; i++)
		data[i] = 'a';
	data[999] = 0;
	std::cout << data << std::endl;

	//set a watch on d.  Demonstrates watches and drilling into complex object
	Demo d("Hello", 42, true);
	
	std::cout << "End of demo" << std::endl;
	delete[] data;
	// delete[] data;  Calling delete again will trigger an exception
}

Programming , , ,

14. May 2016

 

Itch.io have just launched Refinery, a set of tools for early access games.  In their own words:image

itch.io refinery is a customizable toolset made for developers to distribute their unfinished games, build a real community and gain useful feedback. We think early access is broken, and this is our solution.

 

From the itch.io blog, some details of the tools included in refinery.

Limited keys

Developers can now limit the total number of keys available for purchase. This makes for a great way to slowly roll our a game for testing or to target those who are most interested in your game (i.e. from a mailing list.) 

Exclusive content (rewards)

Exclusive content is a way of providing a limited quantity reward to a buyer if they purchase your project at a specific price point. Adding a reward to a project is a great way to give exclusive perks to early buyers.

Command-line tools and delta patches

With our command-line tools, developers can push a new build directly to itch.io right from your build script. Additionally, only the changed files will be uploaded by you and downloaded by players to create delta patches, so no more complete re-downloads just for patching. This is great for players of in-development games that are being patched constantly.

Selling physical goods

Another use case for rewards is selling physical goods along with digital content. In this example you might create a reward above the minimum price that comes with t-shirt. As more shirts become available you can boost the quantity. Developers can specify on the reward that you’d like to collect a shipping address. Developers can also add a custom field to get the size of the shirt.

Restricted community access

Developers can now create a message board only available to the people who have bought your game. This is a private hub where creators can be open about your game’s development and gain useful feedback from your players.

GameDev News

15. March 2016

 

Nevigo have updated and changed the pricing for articy:draft, including a new subscription pricing option.  articy:draft can be thought of as a project management and design solution specifically for game development, a sort of mashup between MS Project and Viseo, but geared towards game development.ad

Details on the new subscription model called FLEX pricing:

Finally the time has come: We roll out the FLEX license subscription model for all versions of articy:draft. This new license eliminates the initial costs of using articy:draft and gives you maximum flexibility to scale your team up and down. It is an additional licensing option, the purchase option is still available as well.

  • Use articy:draft for a low monthly rate
  • Subscriptions may be cancelled monthly
  • Purchased and rented licenses can be mixed
  • All updates and upgrades included

Additionally they have made changes to the existing licensing model:

We did some spring cleaning to our pricing model to make it easier and more transparent. The different server tiers and upgrade costs are gone, and the core products all come at the same price. Effectively, this leads to a price drop in many cases, especially when scaling up your previously “indie”-sized studio.

  • One price for articy:draft, the API and articy:access
  • Floating licenses available
  • Unified shop experience for single and multi user
  • Simplified costs when adding more licenses

They also added some hosting services and training options.  Full details are available here.

GameDev News, Design ,

8. March 2016

 

Faceware Technologies, a provider of “markerless” facial motion capture solutions used in games such as NBA2K16 and Destiny, just released new versions of their software, including a free PLE (Personal Learning Edition) version.  That is a term that I though went away with Maya PLE, I’m somewhat surprised to see it again.  In addition to the free edition, they have also updated their marque applications as well as creating a new rental program.

FTI_WEB_LOGO_HEADER

First, let’s cover the free version of Faceware.  The Personal Learning Edition is a free license that is limited to non-commercial use.  From the Faceware announcement:

More and more individual content creators are adopting Faceware’s technologies to learn or improve their facial mocap and animation skills. The Personal Learning Edition (PLE) was designed with those users in mind. PLE is a free license of Analyzer 3.0 and Retargeter 5.0 for individual, non-commercial use, including research. The PLE includes all of the functionality of the Studio version of Analyzer 3.0 and Retargeter 5.0 (see below), and will be kept on feature parity with the latest versions of those packages, so individual artists will always have access to the latest facial motion capture functionality from Faceware.  For universities and schools, Analyzer 3.0 and Retargeter 5.0 will still be available in-lab and classroom licenses for adoption into relevant curriculums.  

 

There were also updates to their Analyzer and Retargeter software packages.  The changes to Analyzer 3.0:

Analyzer is Faceware’s award-winning markerless facial motion tracking software. Based on advanced computer vision technology, it converts any video of an actor’s facial performance into facial motion files for use in Faceware’s companion software, Retargeter. To enhance Analyzer’s usability for artists in different countries, Faceware has localized Analyzer into nine additional languages: Japanese, Chinese (Simplified), Korean, French, German, Spanish (Castilian), Russian, Polish and Arabic. Analyzer will now also support timecode, editing of in/out points of any new video, and the ability to capture live video straight into Analyzer’s workflow using any of Faceware’s hardware systems. All new features will be available in both Analyzer 3.0 Studio and Studio Plus versions.

While here are the details on Retargeter:

Faceware’s award-winning Retargeter software maps facial motion capture data from Analyzer onto any facial rig through a plug-in for Autodesk Maya, 3DS Max, and MotionBuilder. Like Analyzer, Retargeter 5.0 has been localized into nine additional languages and it supports timecode. Other highlights include an updated shared pose library workflow as well as general speed improvements.  All new features will be available in both Studio and Studio Plus versions of Retargeter 5.0.  

 

Faceware also announced a complete rental option, including hardware and software, on a month by month basis:

For commercial projects that need to be completed on relatively tight schedules, studios are now able to rent Faceware’s entire real-time and creative suite software lineup in 30-day increments. Rental costs start at $340 USD per month.

 

For more details, see the complete release here.

GameDev News

8. March 2016

 

A new version of the popular open source Tiled Map Editor was released today, Tiled 0.15.2.  Unless you happen to be Portuguese or Turkish (who received new translations in this update), there isn’t really a ton new in this release:

 

This small patch release ships with added Turkish translation and an updated Brazilian Portuguese translation! There are also some fixes, though they are more on the cosmetic side.

  • Added Turkish translation (by Nuri Uzunoğlu)
  • Fixed hiding of object labels when deleting an object layer
  • Fixed updating of object label colors when changing object types
  • TMX: Added image size attributes to image layer images
  • Updated Brazilian Portuguese translation (by Laete Meireles)

The Tiled itch.io page3 has been updated with the new download links.

In the meantime, many features have been added on the development branch during January and February. And since editing of external tilesets1 is becoming a huge change, I plan to make a Tiled 0.16 release available in the coming weeks, so stay tuned!

 

If you are interested in learning more about Tiled, we have done an in-depth tutorial series here on GameFromScratch, that should get you up and running with ease.

GameDev News, Design ,

Month List

Popular Comments