Freie Game Assets

Möchte man als Programmierer ein Spiel entwickeln hat man in den meisten Fällen ein Problem. Das Problem ist nicht der Quellcode, sondern die Assets für das Spiel – die wenigsten Programmierer sind gute Grafiker – so das die Assets im schlimmsten Fall dazugekauft werden müssen. Eine Alternative sind freie Assets, welche man unter anderem bei opengameart.org findet. Das Problem dabei ist, das solche Assets dann meist zusammengestückelt wirken, da sie von unterschiedlichen Künstlern erstellt wurden.

kenney.nl/assets

kenney.nl/assets

Mit den Kenney Game Assets, welche unter kenney.nl/assets zu finden sind, bekommt man eine zusammenhängende Sammlung von mittlerweile über 13.000 Assets (von Grafik bis zu Soundeffekten), welche gemeinfrei sind und damit nach Belieben verwendet werden dürfen. Neben der Webseite, auf welcher die Assets gegen eine kleine Spende erworben werden können, sind Sie auch auf opengameart.org zu finden. Durch die Spenden wird die Entwicklung der Assets weiter finanziert. Ende nächster Woche sollen die Kenney Game Assets auch über Steam zur Verfügung stehen, so das sie dann auch automatische Updates erfahren und man diese nicht manuell herunterladen muss.

Entität e.V. auf dem Demokratiefest

Seit einigen Monaten gibt es einen vom Verein Entität e.V. betriebenen Hackerspace in Neubrandenburg. Auf dem morgigen Demokratiefest in Neubrandenburg, wird der Verein mit einem Stand vertreten sein. Neben Informationen rund um den Verein und den Hackerspace, gibt es alte Hardware und technische Aufbauten zum anschauen und auszuprobieren.

Bei den Fontänen ist der Stand zu finden

Bei den Fontänen ist der Stand zu finden

Zu finden ist der Stand auf dem Marktplatz in Neubrandenburg, zwischen 10 und 16 Uhr. Der Stand wird dabei aller Voraussicht nach bei den Fontänen zu finden sein.

Was sichert Time Machine?

Unter Mac OS X ist ein Backup schnell eingerichtet – Time Machine, die dafür zuständige Applikation wird bei Inbetriebnahme des Mac eingerichtet und verrichtet ihren Dienst anschließend im Hintergrund. Backups werden nun regelmäßig auf ein entsprechendes Medium geschrieben.

Time Machine sichert die Daten

Time Machine sichert die Daten

Interessant ist nun, welche Dateien Time Machine sichert – so wird nicht das gesamte Systeme gesichert, sondern nur bestimmte Dinge wie die Programme und Anwendungen des Nutzers. Cache-, Logdateien, der Papierkorb und das eigentliche Betriebsystem werden nicht gesichert. Bei einer vollständigen Wiederherstellung wird stattdessen das System neu installiert und anschließend das Time Machine-Backup wieder eingespielt. Das führt unter anderem dazu das installierte MacPorts, nach dem Rückspielen des Dateisystems nicht mehr vorhanden sind.

Datum und Zeit in einem Property Grid bearbeiten

Wenn man in einem .NET Property Grid ein DateTime-Objekt bearbeitet, so klappt ein Kalender auf, in welchem das Datum eingestellt werden kann. Anschließend kann umständlich die Uhrzeit eingestellt werden. Möchte man dieses Prozedere etwas vereinfachen, kann man für das DateTime-Objekt einen neuen UITypeEditor schreiben:

public class DateTimePickerEditor : UITypeEditor
{
	IWindowsFormsEditorService windowsFormsEditorService;
	DateTimePicker dateTimePicker=new DateTimePicker();

	public DateTimePickerEditor()
	{
		dateTimePicker.Format=DateTimePickerFormat.Custom;
		dateTimePicker.CustomFormat=String.Format("{0} {1}",
                 Application.CurrentCulture.DateTimeFormat.ShortDatePattern,
                 Application.CurrentCulture.DateTimeFormat.ShortTimePattern);
	}

	public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context)
	{
		return UITypeEditorEditStyle.DropDown;
	}

	public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)
	{
		if(provider!=null)
		{
			windowsFormsEditorService=provider.GetService(typeof(IWindowsFormsEditorService)) as IWindowsFormsEditorService;
		}

		if(this.windowsFormsEditorService!=null)
		{
			dateTimePicker.Value=(DateTime)value;
			windowsFormsEditorService.DropDownControl(dateTimePicker);
			value=dateTimePicker.Value;
		}

		return value;
	}
}

Nachdem der Editor fertiggestellt ist muss beim entsprechenden DateTime-Objekt noch der passende der Editor per Attribut definiert werden:

[EditorAttribute(typeof(DateTimePickerEditor), typeof(UITypeEditor))]
public DateTime DateAndTime;
{
	get
	{
		return dateAndTime;
	}
	set
	{
		dateAndTime=value;
	}
}

Damit verfügt man nun über einen Editor im Property Grid, welcher die Bearbeitung von Datum und Zeit komfortabel erlaubt.