• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.


  • Content count

  • Joined

  • Last visited

Community Reputation

190 Neutral

About Semeii

  • Rank
  1. How to pitch angry birds, my way:   I love the honest salt here about game being just a clone of old idea with some whimsical graphics applied, althrought that may not be to helpful for some indies that really want to know how to pitch.   I warn you that you might discover that pitching Angry Birds might have involved some bribing, some over-hyped reviews, some dirty tactics, only those equipped with good intuition and persistence in investigation will find out, but here is HOW:   1. Go to web archive(!)  2. Search for Angry Birds in time frame few months before its release until its benign of peak popularity (you can use google trends or similar to find that out) 3. Sort your results by date 4. Find out who told what, who posted what review 5. Find the culprit(s) 6. Now you know   Enjoy!
  2. I would not do it in any shape or form. There is nothing 'humble' about those bundles. That money those 'humble' bundle distributors get is not a money well earned, to say the very least. If you want to be humble, release your own bundles, sell your game at discount after set time.
  3. One serious point missed is that if everyone would start throwing floss around, the amount of developers that can actually do stuff would decrease and there would be significant increase of people who only develop by mostly 'cut-and-paste', making games look and feel generic and flood everything with generic-remake-of-generic-remake type of stuff. You would probably even see some game mechanics, and overall rendering looks copied all over everywhere, heck, I can even tell every single game that uses unreal engine apart just from a single screenshot and I don't think that's good at all.   If I were a little bit funky conspiracy theorist here, I would say that you are conspiring to make indie games all feel generic, while the big AAA's would not floss and gain edge as indie game would become another name for 'that generic nonsense'.
  4.   No it does not. No animation channels are imported on live version, neither are skin bones or anything alike.         Its incorrect handling of colladas "bind_shape_matrix" in skin controller (not to be confused with bone bind pose matrices). So Assimp's collada importer it is. But heck, even 3ds max cant correctly import dae model exported by itself, hilarious.         What else? (shiver)         I don't think you quite got the whole idea about that. I'm suggesting creating programming language, that describes data and data bindings and comes with a compiler, that generates data access code for a programming language.   So first, there would be the language and a sort of scheme/map created by it. Lets assume very simple case - we want to store 10 integers in a file and a name and optional double value. So I would write something like this: //Data descriptor language DataDescriptor for "SimpleMessage" { required integer(signed, size_32), array(size=10, require_all_elements) called "SomeIntegers" required string(UTF-16) called "Name" optional float(signed, size_64, default=0.0) called "JustADouble" } Then I would call something called something like "CSHARP Code Generator for UberScheme" and got myself as output a file called something like DataDescriptor.SimpleMessage.cs, containing code something like this:   //AUTO GENERATED DO NOT CHANGE //UBERSCHEME VERSION 0.0000001 sing System; using UberScheme.Import; using UberScheme.Export; [UberschemeRootMessage] class SimpleMessage : IUberSchemeInterface { int[] SomeIntegers; string Name; double JustADouble = 0.0; UberSchemeInterface.Read(string path) { SomeIntegers = UberScheme.ReadIntegerArray(maxsize=10, bla bla); bla } UberSchemeInterface.Write(object message) { var simpleMessage = message as SimpleMessage; write... } Created the scheme  and generated code once (per language I'm using), I can initialize a C# object called  SimpleMessage, and write and read to it using simple Read/Write methods and then use resulting class object for whatever I want. Something like this (this would be what end user could see): using System; using UberScheme; namespace TestProj01 { class DisplayColladaProgram { var colladaObject = NamespaceUberSchemeGenerated.Collada.Read(@"C:\test.dae"); //display .. } }
  5. I come across this beautiful chain, while trying to update SharpDX's code, for model animation, problem arose from inconsistency in model formats.   3D applications internal workings -> ->OpenCollada exporter implementation-> ->Assimp library Collada loader/parser implementation-> ->AssimpNET implementation-> ->SharpDX toolkit model processor, that converts Assimp format to SharpDX specific binary-> ->SharpDX code that reads that binary at runtime-> ->The application that uses that and, for example, displays the model.   7 whole steps, where something can go wrong.   Its a nightmare, let me tell you. Now, imagine that model you are loading, does not display correctly, where the problem lies?   Is there a bug in 3D application and its not exporting something correctly? Is there a bug in OpenCOLLADA implementation? Is there a bug in Assimp? Is there a bug in AssimpNET? Is there a bug in SharpDX assimp to binary conversion? Is there a bug in SharpDX binary to runtime conversion? Is there a bug display/rendering code?   So then you find it.   Then you load different model, or the same model with different model format...aaand you got something displaying incorrectly and round you go. You see where I'm getting at.   So while I'm thinking that I started to wonder - is there any data formats/ techniques, where you can get something like what you would call "intermediate runtime data format"? Something like .NET's msil that can be used to compile for different processors, but describing some memory data structure for different languages instead of processors?   I would imagine it work something like code and similar to XML+XML scheme. I would have something like XML scheme, that describes the constraints, but also includes support for references and typed data structures, I would have a language specific runtime type/class code generator, that makes runtime code/class from scheme. Then, given *ANY* scheme, any file that is written alongside this whole thing, and a file, that is a running instance of that scheme, I would just need to do 2 steps, that would not change for ANY model (or anything, for that matter) format, written in this way.   1. Generate language specific object/parser/whatever from any given scheme. Input universal scheme file -> Output code file containing language specific implementation of that scheme. 2. Initialize that object in runtime in trivial manner such as loading it from disk using common Load method (interface) available in all schemes.   Is there something like that? Discuss.   EDIT: So I found this http://en.wikipedia.org/wiki/Protocol_Buffers, Google inc. beat me to it. Just have to dig in deeper and find out is it supporting all the necessities.
  6.    I would only recommend giving out early playtests only to friends and family. If you are making something generic, or something 'with a twist', then I guess its fine to provide it publicly, but anything innovative, new and unseen - never post *that* on internet, that would be very naïve and even stupid, depending on how good and 'new' the idea is. As added bonus, friends and family will provide more in-depth feedback, especially if you attend them 'live' and ask questions and feedback directly.
  7. That's not a good way to show your dedication to your own problem.         Vector3 camPosition = Vector3.Transform(Vector3.Up, Quaternion.CreateFromYawPitchRoll(drehung, neigung, rollen)); ef.View = Matrix.CreateLookAt(Vector3.Zero, camPosition,Vector3.Forward);   Neither of those seem to make any sense. Look up XNA's documentation for Matrix.CreateLookAt and spend some time studying what you are trying to accomplish there. Some transformation, matrix FAQ will be needed for you to complete this. There is plenty of DirectX tutorials going around about view matrices and basic matrix transformation, what it does, what do you accomplish with it and why.  
  8. This also is double-edged sword, in case your gameplay idea happens to be decent and you reveal gameplay based information on your blog/journal. Someone with more resources will just steal your idea, make the game and bam, thats the reality. I suggest being carefull what you put out there, not everything should be revealed.
  9. This can be from overclocking you graphics card or overheat - test on other computer
  10. Thanks, I see, but turning off heuristic is not-for-me as it jumps form path find time form 0.4msec to 2.4 and that is not cool. 6(!) times slower. no no no :D Also im using diagonals to, and rectangle regions will be like 1x1 2x2, ... max of 5x5 maybe.
  11. Thanks for answers, I will go with finding full path, then removing nodes that are inside region, i think that would be work nice and will be fast to compute. just(if my nodes are stored in list - nodes at end first): //Find first node that is in not in region and remove all nodes form that point for (int i = 0; i < nodes.Count; i += 1) { if (!InsideRectRegion(nodes[i])) { //Then remove nodes from 0 - that would be last node in path // to first node found in region nodes.RemoveRange(0, i); break; } } Note that it wold be faster (a lot? - nodes would be removed from end not start of list...) if i stored my nodes in logical order, first path node first, but this is how the A* works - could anyone give a hint how to traverse A* nodes so i could end up with logical order of path nodes? I could just reverse whole list at the end, but maybe there is another way?
  12. Hi, if i have some rectangular region defined or just one tile in grid-based system, how could i find path to that region(region or tile is impassable)?
  13. Use when rendering tree; clip(sampledColor.a - smallValue);
  14. Quote:Original post by WanMaster ENTP apparently, but don't really believe in these things (although with 70+ questions it probably more accurate then the average Cosmopolitan test). Actually its pretty good test, designed in lots of time by psychology expert... Not at all like cosmopolitan ;D