As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm looking for a 3D xna engine that
1. provides GUI interface for editing games
2. provides Skeleton/rigged animation
3. are Well documented
(in short, engines like Unreal engine)
If you want a free engine, I'd suggest that you check out XNA Final Engine. Also, there is Ploobs. In fact, here is a large list of engines that are available:
Synapse Gaming SunBurn Engine 2.0 – Nice Game Engine loaded with features and the Best Support & Community Ever
Digital Rune Engine – Great Game Engine (physics, animation, math, multi-threading and more)
Xen Graphics API for XNA – rendering tools and much more
Engine Nine – includes, animation, post fx, AI, custom materials, scene management, deferred lighting and more
Hilva XNA Graphics Engine – Rendering Engine, Animation, and more
You want SunBurn: http://www.synapsegaming.com/
It runs on WP7, XBOX & Windows.
Maybe you are looking for something like Torque. It's not a free engine but is know to have quite a advanced toolset.
Of the complete list provided below, only the Engine Nine and Ox Game Engine meet your requirements. If you want something of higher quality the only current choice is Sunburn (as mentioned in another answer), which will run you at least $150.
Here's a list of free 3D Game Engines compatible with XNA 4.0:
QuickStart Engine, uses JigLibX Physics Engine, last updated May 2013, no level editor or animation implemented yet.
Axiom3d, partial C#/XNA port of Ogre3D, last updated Aug. 2011, no level editor
Engine Nine, last updated Apr. 2011
And older free 3D game engines compatible with XNA 3.1:
Oops Physics Framework, not a complete engine, but includes basic things like a physics engine, terrain, rendering, and input.
Ox Game Engine, port of Buttermilk3D engine, last updated Apr. 2010
Tomahawk
Well, the top Google result returns this one and only XNA 3D engine, Reactor 3D, and its closure notice pretty much explains why you probably won't find another XNA 3D engine.
edit: DevMaster.net just announced a new release of the Hilva XNA Graphics Engine which appears to be a 3D engine for XNA. However, it seems far from your requirements.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I am wondering what's the next logical step after developing applications with java play framework?
I really love to develop with play 1.2 but I am inconfident about its future, the main developers stopped their support on it (yet it is still opensource) and play 2.0 is a completely different product.
I tried to study play 2.0, but I just couldn't like the scala language (although it sounds like a great language to code)
So I decided to focus my web application projects to another framework. It shouldn't have to be java, but I prefer it to be a platform independent framework like ruby, or else. (I am also a .net developer with mcp certificate but i usually use osx enviroment for coding and I'm not a big fan of windows).
My Current problems with the play framework:
It works quite well but i dont see a future with it i am afraid the opensource community will stop developing 1.2.x after some time
Play 2.0 threads java as a second class citizen, and i am starting to losing my faith to its developers.
There are not much people looking for play framework jobs
The framework should be:
Platform independent
Database independent (can use hibernate
or else..)
Has a large user community
Has to be a proven framework with large enterprise applications
I've searched a little bit and I found grails, spring and RoR frameworks.
Ok then to make things clearer, heres a summary about my question:
Should i continiue from the "java" path?, i have concerns about time is changing and in few years, there will be more "scala" like functional languages used in web frameworks and they will be more useful in future frameworks
I am also wondering about Ruby langugage? Any insights about where will they be in the next 5 years?
Where do you see "Play framework with scala/java" in the next 5 years? Will they be worth the time invested on them?
Thanks for helping!
Spring.
If you know Java then a reasonable thing is to know Spring also.
People crap on Spring because they think:
Its not new and shiny
You need gallons of XML to do anything.
Its humongous monolithic beast.
Besides being mature none of the above is true. And unlike Play! Spring is in it for the long haul.
Spring also doesn't go off and build its "own" of everything but instead relies on best of breed libraries that you plug in. Thus with Spring you can play with what ever templating language, what ever build system, persistence, etc...
Now the only PITA with Spring is finding a good starting point. I recommend either Spring Roo or MWA
UPDATE:
I don't know why I got the -1 when the question was bad anyway (put a comment or something).
He asked for:
Platform independent
Database independent (can use hibernate or else..)
Has a large user community
Has to be a proven framework with large enterprise applications
IMHO There is not a framework that fits the above points better (particularly enterprise).
HE asked an opinionated question I gave him one.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm building a new game and I need to build a web app to help manage content generation. The app would consist of a couple simple forms that would tie into a MySQL db.
I've been really interested in learning Lua for a long time due to it's large popularity in the video game industry and was wondering how well it works as a server side language. I could easily write the web app in PHP but I'd rather use this opportunity to learn Lua if it makes sense.
What do you all think?
Cheers,
Sure it can be done. Good idea if you just want to learn Lua. You should start here: http://www.keplerproject.org/
Of course, if your app would consist of a couple simple forms, you can use all what you want. But if it is more complex (will become more complex in future) it will be better to use some industry standard languages like Python or Ruby (or, at least PHP), there are a lot of good frameworks writen in them that very simplify your work (I don't know about any complete lua web frameworks) .
You should remember, that in future other people will have to maintain your code and there are very few web-developers who know Lua.
Probably, there will be problems with documentation and basic libraries too.
While LUA is a nice language for embedded development but i would extremely vote against LUA for web development.
The reason is that in Games you simply don't have an external API. All is done with your own objects only some calls into your game engine.
But the web world is so full of stuff you need, like SMTP, POP3, IMAP, SSL, Amazon APIs, Google APIs, RSS Apis, Imaging etc. and while the checklist for LUA may have a check mark behind all this words - it doesn't mean anything. Most of the stuff i have seen is just a "me too| implementation but not industrial strength. They are projects by hobbyists and are published on a "Its good enough for me" basis which is total unacceptable if you ever go mission critical.
There is a reason why it takes years and a huge community to get this up. Lua has an extremely small community of web developers.
So if this is a professional project where you put your money i can only say hands off. On the other side if you have enough money i still have some snake oil here for sale, please contact me.
I have been using lua for years as a web language. Initially using the Xavante project and more recently apache2.
Dont listen to any neigh sayers, its a great language for web developement and we use it to write business software, and not just for form processing, for graphical applications too.
Also it offers us seamless integration to any other lua or system functions we might need to call.
Good Luck!
Have a look at Nanoki which is built on a pretty minimal set of libraries (lfs, luasocket, lzlib, slncrypto)
and Sputnik which is built on Xavante or CGI
Lua is a good language but it is best suited to embedding within an existing project in order to quickly extend the capabilities of that project. In particular, the interesting aspect comes with how you bind it to the host application. This is definitely the case when programming for games where it is an embedded language rather than the language the whole app tends to be written in. So using a web app to learn about Lua with a view to making games is probably not a very good approach, especially since the syntax is very simple and would be picked up quite quickly anyway.
I think that specific variants of lua can be used successfully for web applications and I have done that in the past using the maintained weblibrary. It can depend on if the lower level software on the computer is itself written in lua because of its high speed and this may cause a clash of lua versions. Regarding a serverside possibility the server would need a compatible version of the script developing facility for the hardware and a suitable bytecode or VM instructions and custom VM runtime implementation for running the application.
I've been developing a pure Lua Web Server, you could always check it out and see if it suits your needs
Lua4Web https://github.com/schme16/Lua4Web
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
Delphi developers has several tools (several alternatives to ASP.NET) for building web applications.
While No.1 framework is Intraweb, there is a lot of interest around ExtJS, that has 2 incarnations:
1) the opensource ExtPascal
2) the closedsource Raudus
Now the products are different, Raudus never supports the latest ExtJS version (while ExtPascal does because as far as I read it "almost automatically updates itself to the latest ExJS version"), Raudus "seems" much RAD (much similar to Intraweb from the RAD point of view).
Anyway why chose one or the other?
Why Raudus (since it is free) cannot become Open Source? Or does Raudus use ExtPascal behind the scenes?
Comment: uniGUI seems at first sight to combine the good part of Raudus (the RAD part) and ExtPascal (being based on extPascal).
Talking about Raudus, I'd be careful! You can download it for free, indeed. I was about to start using it when I realized there's no single word on its usage license. There's no license in fact, or I was unable to find it under "standard" locations (website? no. installer? no. README / LICENSE file? no.)
Thus I'd be careful with using library which doesn't specify it's license. Especially if you're about to start some project which will use it intensely - just imagine what happens when it comes out that you need to pay big amount of money for using it ...
Why use any of them? RAD in the form of Intraweb and tools like it, is not appropriate for web programing. It doens't separate the GUI from bussines logic well. In other words there is no true MVC approach there. Maybe ExtPascal is different here, but the point is elsewhere.
ExtJS is a very well written RAI JS library. It feels almost like putting blocks of code together in a very object oriented way. You can easily build whole GUI with ExtJS without any backend support. This way your whole GUI is in javascript files and no backend is needed. Backend only processes the ajax call and provides data / processes data. This way you have a clear separation of concerns.
This can be easily done without any frameworks. Yes framework would come in handy but it would have to be done in a ASP.NET MVC or Ruby on Rails way. No RAD and no visual designers. New web developers often make those mistakes. But if you program for the web long enough you come to appreciate the separation of GUI and logic and the simplicity of HTML. Web programming is different from desktop programming at least to a degree.
To answer your question. From what I have seen, I like ExtPascal better. It seems a purer web development tool than Raudus. But I admit I have only seen both from the surface and from demo videos, so I cannot judge, only speculate :)
The Raudus developer put up a new blog post in late October and claims, well I'll let you read the snippet for yourself:
"Raudus license is freeware as written in license.txt. You CAN use Raudus in commercial projects. Raudus sources are not available yet."
Edit: There is a license statement at the bottom of the http://www.raudus.com/ page.
"License
Raudus is freeware. You can freely use Raudus for commercial purposes."
As to contacting the author, try this from the same page: E-mail: igor#klopov.com
After using Raudus for a few months I decided to post my own answer.
The framework is improving, Sencha touch support now it is not complete but sufficient to create usable web applications optimized for mobile devices.
RFE, a new front end, not based on Sencha Touch is under developement and in next Raudus release (that should be out soon) there will be a usable preview of the new controls set.
So while ExtPascal seems frozen, Raudus is in progress and promising.
Update: I stopped using Raudus, it dropped ExtJs support and now it ships with own controls, that will never match the beauty and richness of extjs components. I am now going for IW + cgdevtools components that are Jquery UI for IW.
user193655 --> Depending on what you do be carefull with both approaches. I am really a big fan on Delphi or Freepascal/Lazarus - I am not very certain if the approach of bringing 3GL bindings to the Javascript stuff is wise.
MVC - depending on what you do - in PHP you have the Yii Framwork or Prado. Maybe the second has some ideas from .net built in which are very easy to understand by Delphi developers. PRADO is an event driven approach while YII Framework is absolutely cool and unix like.
After using Raudus it seems that it is not practical for large scale of applications.
According to their documentation and I have also sampled, it serializes all client request into single main thread. However it process client request and response generation part in multi-threaded enviornment.
But main thread issue is quite important as it directly impact the response time if one action is taking more time in the main thread, others will keep waiting.
Any suggestions to resolve this issue?
Raudus:
Relies upon Delphi, in which:
Is verbose;
Relies upon Microsoft Windows;
High-cost to adapt to or to maintain;
Quote from raudus.com: "Raudus is freeware. You can freely use Raudus for commercial purposes. Raudus sources are not available yet." — This, to me, will be never a license. On the homepage, simply there is no documentation about Terms of Service or something like that. Hence I won't deal with their services.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm writing a Mahjong Game in C# (the Chinese traditional game, not the solitaire kind). While writing the code for the bot player's AI, I'm wondering if a functional language like F# would be a more suitable language than what I currently use which is C# with a lot of Linq. I don't know much about F# which is why I ask here.
To illustrate what I try to solve, here's a quick summary of Mahjong:
Mahjong plays a bit like Gin Rummy. You have 13 tiles in your hand, and each turn, you draw a tile and discard another one, trying to improve your hand towards a winning Mahjong hand, which consists or 4 sets and a pair. Sets can be a 3 of a kind (pungs), 4 of a kind (kongs) or a sequence of 3 consecutive tiles (chows). You can also steal another player's discard, if it can complete one of your sets.
The code I had to write to detect if the bot can declare 3 consecutive tiles set (chow) is pretty tedious. I have to find all the unique tiles in the hand, and then start checking if there's a sequence of 3 tiles that contain that one in the hand. Detecting if the bot can go Mahjong is even more complicated since it's a combination of detecting if there's 4 sets and a pair in his hand. And that's just a standard Mahjong hand. There's also numerous "special" hands that break those rules but are still a Mahjong hand. For example, "13 unique wonders" consists of 13 specific tiles, "Jade Empire" consists of only tiles colored green, etc.
In a perfect world, I'd love to be able to just state the 'rules' of Mahjong, and have the language be able to match a set of 13 tiles against those rules to retrieve which rules it fulfills, for example, checking if it's a Mahjong hand or if it includes a 4 of a kind. Is this something F#'s pattern matching feature can help solve?
If you're familiar with functional languages, they're a great way to write game AIs -- and if you aren't, the challenge of learning one will help you grow, and leave you a better programmer than you were. (I could truthfully say the same for declarative Prolog-like languages, and dynamic scripting/OO/multi-paradigm languages such as Ruby or Python!-).
Your task as you describe it should be easy in any of these groups of languages -- so pick one and go for it! We'll collectively be happy to help with any questions that should spring from these attempts (I'm personally unfamiliar with F# or Scala, but would be happy to help with Haskell, any ML-family language, Scheme, or Erlang -- and similarly for the other groups;-).
Seriously: full command of at least one language in each broad category (procedural, functional, declarative/clause unification, relational, dynamic/multi-paradigm, etc) makes you a seriously better programmer -- mahjong apart (and it's a classically popular game in the Romagna region of Italy, close to my hometown Bologna;-), any task that can add to your roster in this respect is well worth undertaking!!!
There's nothing you can't make yourself that appears in another language.
I've tried to make AI using java before, based off what I'd done in Prolog. I thought it would be a bitch to code. However, I just had a couple of methods that did a lot of the grunt work, taking it out of the main methods, and it worked wonderfully.
You may need to reinvent the wheel, but there shouldn't be much you can't do in C# that you can in F#.
note: I've never heard of F# before, but it can't be that bad. I may/may not be blowing out of my own arse.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I've been asked to help out on an XNA project with the AI. I'm not totally new to the concepts (pathfinding, flocking, etc.) but this would be the first "real" code. I'd be very thankful for any resources (links or books); I want to make sure I do this right.
The standard textbook and a great place to start is Russel and Norvig's Artificial Intelligence: A Modern Approach. You can also get MIT's Intro AI course via OpenCourseWare
These links might be useful to check out, for a beginning (even if most are mostly game-oriented):
http://www.a-i.com
http://www.kynogon.com
http://openai.sourceforge.net
http://www.botspot.com
http://aigamedev.com
http://www.aiwisdom.com
http://igda.org/ai/
http://gamedev.net
and http://www.gameai.com, who has already been mentioned..
I was surprised not to find in the above answers any of the books I though of so here goes, the books that any development team in a game studio will always have:
Game Programming Gems (there are 7
books by now).
AI programming Wisdom (I think 4 are out).
Both series are combined of many very useful articles and browsing through the first two of each series (the game programming gems have AI chapters which includes several very good articles) will give you nice understanding of both basic and advanced techniques used currently in the game industry.
BTW - you can also gain understanding in other areas like data structures, effects, 3D and sound.
Enjoy the reading,
I have to comment that AI: A modern approach is a pretty dry read.
If you're actually interested in AI, and want to stay interested, you are much better off going with Norvig's gift to the world: Paradigms of Artificial Intelligence Programming. Not only is this a great intro to AI, it's a great intro to beautiful programming.
I second "Artificial Intelligence: A modern Approach". It is really good at explaining the items in a basic, understandable manner. It's also a book that is used in many universities to teach students the basics of artificial intelligence.
Maybe it is not such a bad idea to take also take a look at the slides they use in the courses, to get a basic idea on the topics at hand.
There's an XNA specific tutorial on flocking.
You might find the blog, wiki and forums on AiGameDev.com useful.
Russel and Norvig's Artificial Intelligence: A Modern Approach.
Be warned, this book is a bit of a door step. Very detailed and generally very good. I would probably recommend some of the online sites first to get a flavour for the types of algorithms you might need and then selectivly dive into Russel and Norvig to get a more in depth view of the implementation.
Dont forget the usefulness of online forurms such as this or aigamedev.com as I used these extensivly throughout my own AI degree. You might also find that you need to buy a specific game AI book to help with some game logic as this can be substantially different from AI 'application' logic. In game scenarios I think you're generally lucky if you get ~5-10% of the processing time whereas in an application the AI is generally the only thing running and this allows for much more advanced and processor heavy techniques. This is also something that you might need to consider and Im not entirely sure that Russel & Norvig is the best place.
Good luck with the project, I wish I was in your shoes!
Two references of interest should be
Artificial Intelligence for games (Ian Millington)
Programming Game AI by example (Matt Buckland)
I second the reference to the AI forum at gamedev.net. particularly because some of the key posters on that forum work in the industry (including the writer of AiGameDev.com), or use AI & related techniques like planning and optimisation in practical domains.
Amit's A* Pages are extremely helpful in writing pathfinding code. Lots of meaty theoretical and practical info there.
I've always found Steve Woodcock's Game AI site to be a great reference. It includes discussion, source code, and pointers to books, conferences, etc.
I would second: Programming Game AI by example (Matt Buckland)
This book gives great algorithms that should easly port to XNA.
I just read some excerpts from AI a modern approach, mostly because I'm interested in the matter, not because I could actually use it. AI a modern approach is quite good, it's well written and really interesting, however I don't know if you can use it, maybe not if you are more looking for code samples..