What makes a 3D game's graphics [closed] - graphics

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 9 years ago.
Improve this question
As a somewhat experienced XNA developer, and a beginner to the world of 3D modeling (via Autodesk Maya), I was really wondering what actually makes the graphics look so good in video games such as Crysis3, FarCry3, Metro:Last Light, etc..
Are the game's graphics affected mostly by the Models? Shaders? Something withing the game's engine? Or might it even be the textures that are used?
My guess was that the game's shaders are the most important, but since I barely know anything about it I've decided to ask before I start learning how to program it (HLSL, right?).
thanks.

It's the artists. A good artist can take anything and make it look beautiful.
It really comes down to a combination of things - the models, the shaders, the textures. The dirty tricks you use to combine these things.
But I think, from the perspective you're asking your question from, the answer is definitely "the shaders". The shaders are what bring everything together to create the final image. Shaders are basically little programs - so they can do more-or-less anything.
Of course, that's kind of like asking "what makes software so great?" and saying that it's "the code".
Probably the most important thing that makes a 3D scene look realistic/good is the lighting. This is usually done in shaders. But it could also be pre-calculated and stored in textures. Or some combination of the two.
Here's an article about a game that has an advanced, physically-accurate lighting simulation (many games are still using non-physical simulations). The shader is what does the lighting calculation itself - but the textures that define a material's properties are obviously integral to this process.

Related

Decide Pixi.js or Phaser [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 21 days ago.
The community reviewed whether to reopen this question 21 days ago and left it closed:
Original close reason(s) were not resolved
Improve this question
One of my school project is to make a realtime multiplayers webpage game, I am currently having difficulty to decide if I should go Pixi.js or Phaser for the game graphic and control, could anyone talk a little bit about what they are good at and better that each other?
Phaser uses Pixi for rendering, albeit an older and heavily modified version of it. Current versions of Pixi may give you better performance, but you'll have to implement by hand what's readily available in Phaser.
They are different by that Pixi is a rendering engine and Phaser is a game framework.
I'll quote Rich, the creator of Phaser:
Off the top of my head, here is what Phaser adds onto Pixi:
Choice of physics systems (arcade or full body)
A Game World and a Camera which can pan around it
Tilemap support
A particle system
Sound support (both web audio and legacy audio)
More advanced input handling (input priority, drag and drop, etc)
Keyboard and Gamepad inputs
Scale Manager to handle game / scene resizing + full screen support
Tween Manager for tweening game objects, hooked into the core clock (so it pauses properly when your game does)
Asset loader (supporting all kinds of file types) and Cache
A State Manager to let you swap between game states easily
Game clock + custom timers + timer events
And probably lots more I forgot. As someone has commented though, it depends entirely on what you want to make. Lots of people use Pixi who don't make games at all. However as this is a game dev forum, I'm going to suspect you do :)
I guess just try it. If you don't like it put it down to experience and just use Pixi "raw".
Source: http://www.html5gamedevs.com/topic/12656-phaser-pixi/#comment-72893
Depending on how much you can wait, you may actually wait to try Phaser 3 (Lazer), which is currently in the works, and will have its own rendering engine. I think, however, that learning the current version of Phaser is a good starting point, and many things in Lazer will be the same.
Phaser gives you a full game framework. Pixi is a rendering engine as Kamen described above.
My idea, if you are a beginner on HTML5 game development, you can have two different approaches;
If you have a product ahead of you to complete, Phaser gives you more tools and therefore speed. It is the biggest sea to swim in for HTML5 game development. But it has its own limitations. Off course you can write your own tools but at the end it is a framework and like every framework it forces you to use its own flow and tools to run smoothly. It would require some time for a developer to understand its flaw, pinpoint their needs and if Phaser doesn't meet them, implement their own solutions. But many people use Phaser and most possibly, there is an answer to all of the problems for a beginner. At the beginning they were using Pixi.js as renderer but now they have their own.
If you want to learn by digging deep into HTML5 renderers and game development, starting by using Pixi.js might be a better decision. As mentioned, Pixi.js is only the renderer. It has cool features but it needs more development upon it to make games. But it also gives you the freedom. You mostly won't have to deal with renderers(WebGL or Canvas) but rest is fully up to you. Personally, I started with Pixi.js, I knew about Phaser but I didn't look deeper into it and wrote my own framework. After my framework got into some point on development, I checked Phaser and I realized that what I had in mind was mostly already existed on Phaser. But still it gave me a deeper information about HTML5 game development.

Baby Cry Sound detection [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I wanted to write a code to detect baby cry sound. I am using Windows as platform. Presently, I am able to get audio samples and its frequency plot(using FFT) but not sure how to proceed forward.
I wanted to ask what steps I should follow to detect the baby cry sound given its time-frequency plot.
I saw some methods such as median filter followed by HMM in speech recognition. But for simple sound detection do I need to go for such sophiticated method?
I will be very grateful if you could help me.
Hidden markov models are widely used in speach recognition, but since you don't really need to know what your baby is saying (next project: baby translator), i don't think it is what you need.
What you should probably do is look at a lot of spectorgrams of babies crying, and look for patterns. Or, even better, let your algorithm do this. What you do is calculate certain metrics about your sound called MFCCs.
You do this on, say, 1000 samples of crying sound, and then you have a 1000 vectors of metrics.
Now, for each metric you calculate the standard deviation. This gives you a way to tell of a sample of random babysound how much different it is from avarage crying sound.
This sounds very hard, but i know there are tools out there. Have a look at sphinx. You can probably train to work.
But either way, start by collecting baby-crying sounds ;) (but don't steal candy)

Creating 2D graphics with a 3D tool? [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 9 years ago.
Improve this question
I'm planning to develop a RTS game with 2D graphics, since it will be a sprites-based game it will require multiple views of every actor (or at least for most of them)
for instance
Now the problem is I kinda sucks as designer, can work a bit with Photoshop but being a 2D software would be really hard to create different views of a single character and make it to look the same.
That's why I was thinking to create models with a 3D tool, then i could get all the renders just rotating them...does this make sense for you guys?
If so, that drives me to a second question: What software could I use?
Again, I'm programmer not designer so I will need to learn from scratch, and 3D studio and Blender look really complex, Google Sketchup seems to be easier but not sure if worth it.
Well that's it, thanks in advance for any feedback.
Creating your actors with a 3D modelling tool and then creating sprites by rendering multiple viewpoints of them is a sound approach. The main thing is to make sure you have a way of scripting the sprite production so that you don't have to tediously generate 100s of sprite images manually!
These days though, I'd have to query why, if you have actors as 3D models, you wouldn't just render them directly in 3D on whatever platform the game is running on. Even the most humble mobile platform has enough graphics power to 3D render any model you're likely to cook up for sprite-sized objects, and a fully 3D approach gives much more flexibility.
Hybrid approaches are also possible; I seem to remember the Total Annihilation RTS games stored 3D models of the game objects, but created and cached 2D spites of them on demand (within the otherwise 2D game engine) rather than relying on the flaky 3D HW of the day or on pregeneration of sprite images for loading. It was a good solution for it's time but I'd be surprised if the approach was still needed today.
It's worth persevering with a package like blender or 3D Studio. The skills you pick up will be useful for other stuff in the future.
If you're dealing with relatively small or low rez graphics like in your example, you don't need to worry about putting too much detail into your model. Just render it out, scale it down and then adjust it in a paint package.

resources for making a 2d sprite? [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
I am making a 2d game, can you post link- tutorials for making a 2d game sprites?, and tutorial for browser game development?
I will be really helpfull
Thanks to all
Here's an article with quite a few details
This site also has some sprite-related resources, and the forums have some guides from a number of experienced people.
If you are wanting to learn about making 2D sprites, the best advice I can give is to learn from the hard work of others. Find a game with sprites that you can edit, and start by modifying the existing sprites (a simple recolor is an easy starting point). Then you can move on to larger sprite modifications (shape, size, etc), "swapping" sprites between games, creating a simple game and using sprites that you "borrowed" from an existing game, etc.
I've been thinking about this problem recently.
In the old days, sprites were hand-drawn pixel by pixel. This works well for flat 2D games (side-scrollers, cartoon adventure games, Z-axis top-down, and such), particularly if they are in the 320x200 resolution. Some examples of gorgeous hand-drawn sprite games are the Sierra and Lucas Arts adventure games, Disney's jump&runs, Capcom's fighter games, the Tyrian/Raptor-style top-down scrollers, and the early RTS games (C&C, WC1).
Some games, like Prince of Persia and Mortal Combat, used sprites from animated actors. That produced fluid motion, but looked 'flat'.
Between the mid-90s and the early-00s, character/item sprite-drawing was done by taking stills of 3D objects. Practically every 2D RTS game since around Age of Empires 1 did that. AFAIK Diablo, Baldur's Gate, Divine Divinity, and other such RPG games did the same. This is the reason those games came on so many CDs - they were chock-full of content.
This approach looks great (not flat, but "2.5D") but takes a lot of hard-drive space. Also, whereas you could produce hand-drawn sprites in Paint, the 2.5D ones require 3Ds Max (or equivalent).
One problem that arises with this approach is the combinatorial explosion in costume design (i.e. if you want animate a character in three different coats with three different hats and three different pairs of pants, you need 27 distinct animation). The solution to this, as seen in Diablo II and Baldur's Gate, is rag-dolling - you produce different sprites for every part of the body. This takes a lot of work. Blizzard made their own tools to produce their sprites, but I'm not sure there are sprite rag-dolling tools in the open.
More recently, most games are 3D. Many actually look worse than the old 2.5D ones, because a simple 3D model can animate well in sprites, but poorly in real-time 3D. The difference is that between a glamor shot of a celebrity, taken from a certain distance in certain lighting and then worked-over in photoshop, and the appearance of the same celebrity in real-life (which may not be as glamorous).
I wonder if there are 3D Object -> Sprite programs. I know of one (don't remember the name at the moment), but are there others? At the very least I'm sure there are scripts for Maya and 3ds Max that take shots of an animated 3D object from different angles. Does anyone know more on this?
To make a 2D game sprite:
Open up paint. Paint a picture. Save as a bmp. You now have a 1 frame sprite. You can add meta data to this in code if needed for hotspot, collision info, etc. If you want it to animate, create a bunch of bmps and display them 1 at a time at whatever speed you want to animate them at.
No need for a tutorial link for something like this. Or, you can download any one of thousands of sprite editors that do the above stuff in one place.

Is using Dexter's character sprite okay, or do I have to [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
.
Inspiration -- Southpark game
(very popular if you see download count on download.com ,,, did he ask for permission ??)
I am making a 2d game based on dexter's lab theme. I've got the sprite of dexter from GSA. basically I'm not an artist, so I have to depend on already available sprites, backgrounds, sfx on websites like GameSpriteArchive etc.
But is it okay/legal to use the dexter sprite I have got ?
I wish to release it publicly too, so shall I have to make lot of changes to do that?
Is it possible to get a permission to use the sprite?? My hopes are very less in getting permission.
Besides all that my basic plan is -
Dexter's sprite from google search
Enemy sprites from various GBA/SNES/etc games
tiles/objects from these retro games
Background art and style from blogs and portfolios of artists behind dexter, powerpuff girls, and samurai jack
I am not a lawyer. This is not legal advice.
If you made the sprite yourself, you'd be fine. If you got a release to use it from the creator, you'd be fine. If it was released into the public domain, you'd be fine.
Anything else, you'd have a definate problem with.
There's also the possible problem you'd have even if you create the sprite yourself -- the likeness of the character is likely copyrighted. However, that's not as cut-and-dried of an issue.
Unfortunately, this is one of the things you'd need to ask a real lawyer to get a firm answer on. If it's for your own use and that of some close friends, you might be able to get away with hoping you don't get noticed (like most people who speed). If you're planning to include this in something you distribute to the public (even more so if you sell it), you're likely to run into problems.
probably not legal, since Dexter's lab is published by Hanna-Barbera and was created by Genndy Tartakovsky. They would have to grant you a license - but it can't hurt to ask!
You probably won't have to get permission if they don't notice -- it's the old "legal unless you get caught" thing. However, I strongly reccomend that you DO get permission from the creators or not use it at all on purely ethical grounds. After all, you wouldn't want somebody appropriating your work, right?

Resources