Hot answers tagged

61

EDIT: It's official, Microsoft has killed off XNA. I'm saddened by this but it was not unexpected, it's what I was predicting would happen, but hoping I was wrong. Everything below this point is my original post from early 2012. Something else to consider is that Microsoft is likely to release a new console in mid to late 2013. Will they continue with ...


58

Microsoft has an FAQ about the use of their trademark. From that FAQ: Can I use a Microsoft logo to indicate that my product or service runs on or is compatible with a Microsoft technology or service? Yes, as long as you have a signed logo license agreement with Microsoft. Microsoft has many logo programs to indicate compatibility with ...


47

MonoGame ( an OpenSource, OpenGL implementation of XNA ) v2.5 was released today with support for custom shaders across iOS, Android, MacOS and Linux. Our team has started work on adding PlayStation Suite SDK support and also Window8 Metro ( based on SharpDX I believe ). We already have a 3D branch, imaginatively named develop3d, which is where all of our ...


30

GLFW is modern and has a very well defined scope. It's also under very active development. SDL on the other side is rock solid and has a lot features in different scopes but is somewhat lacking in all of them (for example: SDL can do audio, but you might prefer using OpenAL because its far superior in that matter). It might be notable that SDL was ported to ...


29

You can't. At least, not as a game developer. As a gamer, you can purchase more expensive keyboards with "anti-ghosting" features, but otherwise the limitation is part of the hardware itself, so there's nothing you can do in software to solve it. Check out this demo page to see how keyboard ghosting works, plus a demo: https://web.archive.org/web/...


17

Looking at my disk, I have 1 game that saves savegames in %APPDATA% 1 game that saves savegames in %LOCALAPPDATA% 2 games that save "other stuff" in %APPDATA% 3 games that save "other stuff" in %LOCALAPPDATA% 2 games that save savegames in %UserProfile%\Saved Games 21 Games that save savegames and loads of other stuff in %UserProfile%\Documents, not ...


16

From what I understand about the situation it can go either of two ways. The API is either being deprecated or they are ramping up to create a XNA version based off DirectX 11. Here is an article about each perspective: Deprecated standpoint DirectX11 standpoint


14

but XNA was never a real success lolwut? XNA is an amazing success. If you just look at this site as a measuring ground, you will notice that: XNA is the top recent tag (it stays up there quite a lot) XNA questions get quickly answered, often with multiple answers Difficult XNA problems are addressed This shows that there are a lot of people interested in,...


12

Yes, Windows 8 does support DirectX 9. For development, the old DirectX SDK is now deprecated, but you'll have all the libraries and headers you need within the new Windows 8 SDK, which comes included with Visual Studio 2012. You can go for the "old way" with no problem. If you need PIX for some debugging, or the high level D3DX library, you'll have to ...


12

As others have mentioned, on OS X (and Linux), OpenGL is the only game in town for hardware-accelerated graphics. So the question really comes down to: why do developers use Direct3D instead of OpenGL on Windows? One possible reason, as suggested in the comments, is that they started out as a Windows-only project and later decided to add OS X / Linux ...


11

What is the future of XNA on Windows 8? XNA will only run on the Win8 desktop and there is almost no chance that Microsoft is working on a XNA compatible API running under Win8 Metro UI/DirectX11.1. If you really want to continue developing on a XNA like API on Windows 8 Metro, while still being able to use the content pipeline (one of the reasons why XNA ...


10

Couldn't find the right phrase for search but finally found it, "using corporation trademark". It seems you are allowed to freely use their logo's and trademarks as long as the product is really compatible with their software. For Apple Compatibility: If you are a developer, you may show an image of an Apple product in your promotional/advertising ...


9

I have not seen an else being used in this instance (the Rastertek tutorial you mentioned does not use an else). My guess would be if that you tried to resize your window the game rendering would freeze proving that the else part is never executed, as the resize message would be constantly sent. A common loop would have this structure. while (true) { ...


8

"Dedicated" in the configuration name refers to the game's dedicated multiplayer server. It's for sever operators exclusively, and runs an empty multiplayer server that exists solely to receive connections from other clients. You don't want that. Run a configuration that starts with "Debug" or "Release" instead of "Dedicated."


8

A singleton for your main engine class is perfectly normal. It's even quite acceptable to have one singleton for each of your game's major systems, like graphics and input. I personally prefer a single Engine singleton with all systems as members of that object, but really there's very little difference. A singleton can just be a static global object, ...


8

It is against the Apple and Mac OS terms of agreement to install Mac OS on anything aside from an Apple authorized machine. You are in breach of your user agreement by doing even that. So app-store stuff aside - you are in legal hot water. However! Pushing that aside, I'd like to note at least one game has been published with a similar method as the one you ...


8

I've found a workable approach. I grabbed the DS4Tool source and copied the bits I needed into my Unity project so I could read the reports from the device directly. (That's the NativeMethods class to interface with Kernel32.dll, the device enumeration from HidDevices, and reading the report from the HidDevice class. I cut out the rest to keep things as ...


7

Generally timeGetTime() is best for timing game logic - GetTickCount isn't quite high enough resolution, and QPC & RDTSC are a lot more trouble than they are worth for that purpose. For profiling on the other hand, either RDTSC or QPC can be quite worthwhile. I prefer RDTSC over QPC, though microsoft recommends QPC. The four common time functions ...


7

As described on the XNA Community Forum, you can get the host Form and listen to the FormClosing event, which allows you to cancel the event. The example code from the community form reads: protected override void LoadContent() { Form f = Form.FromHandle(Window.Handle) as Form; if (f != null) { f.FormClosing += f_FormClosing; } ...


7

This is called vsync (vertical sync), which traditionally means that your rendering rate is synchronized with the vertical refresh rate of your monitor to avoid tearing. Nowadays LCD screens don't have "vertical" refresh rates, just simple refresh rates, but it's the same thing. As others have said in the responses, your video card driver settings cause ...


7

I recommend loading your sprites using SOIL, and then rendering them by just drawing textured quads. If you do it without any deprecated functionality (use shaders) you will find it's very fast.


7

GDI (Graphics Device Interface) is the software renderer under Windows. Basically any language/runtime platform under Windows that is not GPU-accelerated is going to be using GDI under the hood at some level. While Java AWT might use GDI directly via the C code that the Java runtime is written in, something like Flash running in Chrome will OTOH be using GDI ...


7

Games like that are called screenmates or desktop pets. They are a type of digital pet that interacts with desktop windows. Positioning Desktop pets query the host operating system's windowing system for window positions. The windowing system is typically DWM on Windows and X11 on Linux. On Windows, you can include Windows.h and use EnumWindows to get a ...


6

No. There's no official way to do this in the API. If you were insane, you could perhaps use reflection to get at the underlying DirectX objects, and then trick them into reusing a window and triggering a content reload at the right time. (Only one device context can be attached to a window at a time, basically) You could let them have separate windows. ...


6

Yes, it does use OpenGL for some operations. You can get the full list from the source code. The major uses are, as of SFML 1.6: RenderTarget.cpp: set up render targets, clear screen, set matrix mode etc. PostFX.cpp: postprocess manager Image.cpp and Sprite.cpp: texture and sprite handling String.cpp: text writing In the upcoming SFML 2.0, some of this is ...


6

EDIT: After a comment by @ChristianIvicevic I felt compelled to reword my answer to emphasise that the Article link I provided is a far better alternative to using a system call as it is more secure and does not risk producing false positives with anti-virus software. Try and use this Microsoft solution: Performing Clear Screen (CLS) in a Console ...


6

Got it: The Geforce4 MX with the newest-available nVidia drivers (circa 2006) doesn't support the glTexEnv approach to blending source and destination textures. At least, not in hardware. Drawing the simplest shapes results in crippling slowness. However, it does appear to support GL_BLEND combined with glBlendFunc in hardware. Solution: Instead of the ...


6

Yes, but keep in mind the default frame buffer will always be the same size of the window. What you can do is to render your scenes internally into an off-screen (400x300) frame buffer, and then up-scale it to (800x600), you can do this by rendering this into a texture and applying it on a full screen quad, the advantage you will get is your shaders will run ...


Only top voted, non community-wiki answers of a minimum length are eligible