Reputation
4,064
Top tag
Next privilege 5,000 Rep.
Approve tag wiki edits
Badges
3 17 21
Newest
 Good Answer
Impact
~482k people reached

  • 0 posts edited
  • 0 helpful flags
  • 99 votes cast
Feb
8
comment Encrypted content in games
@mucaho: That requires knowing "each possible solution" beforehand.
Feb
8
comment Encrypted content in games
@Christer: "Also since that fact that encryption is used is transparent to 99.9% of the users, that isn't a valid argument for it being a horrible idea." If it makes an easter egg take up more time in development that could go to genuinely useful features, then yes, it's a horrible idea. You have spent more time on formulating your question and responses to answers than this feature deserves. In that time, you could have been writing your actual game. If it's transparent to 99.9% of users... then why should it matter to them if it's encrypted? Why spend time for 0.1% of people?
Feb
8
comment Encrypted content in games
@Christer: Your example only betrays the irrelevance of your overall question. The contents of "a secret altar outside of any quest" is, by definition, irrelevant for any game that is fundamentally about completing quests. And if your game isn't about completing quests, why do you have quests in it? Either way, the overall fact remains: you are spending a very great deal of time on something of no actual relevance to your game or your players. You should focus your very limited time and energy on things that matter.
Feb
7
comment Better to have 2 methods with clear meaning, or just 1 dual use method?
@Deduplicator: allocation vs. reallocation is... OK. It's not great to put them in the same function, but it's not nearly as bad as putting deallocation in the same one. It's also an easy distinction to make.
Feb
7
comment Better to have 2 methods with clear meaning, or just 1 dual use method?
I've seen such an API. The Lua 5.1+ allocator uses it. You provide one function, and based on the parameters it passes, you decide whether it is trying to allocate new memory, deallocate memory, or reallocate memory from old memory. It is painful to write such functions. I would much rather that Lua had just given you two functions, one for allocation and one for deallocation.
Jan
27
comment Why are reference-counting smart pointers so popular?
"they are mixed with other data." It's not so much that they're "mixed" with other data. It's easy to use the C++ type system to see what's a pointer and what is not. The problem is that pointers frequently become other data. Hiding a pointer in an integer is an unfortunately common tool for many C-style APIs.
Jan
27
comment Why are reference-counting smart pointers so popular?
Um, it's a question tagged c++ which talks about C++ features. Clearly, any general statements are talking about within C++ code, not the entirety of programming. So however "objectively" garbage collection may be in use outside of the C++ world, that is ultimately irrelevant to the question at hand.
Jan
23
comment When is it appropriate to make a separate function when there will only ever be a single call to said function?
@user61852: I think the problem he's getting at is that you don't explain why you should do that. You give guidance, but no reasoning.
Jan
10
comment What are the advantages of GLSL's compilation model?
"The trick here is that the array cannot be accessed using directly an uniform variable." That is a driver bug, not a "misunderstanding of the GLSL specification". No version of GLSL has ever declared that array indexing via a uniform is illegal, that you have to use an explicit temporary stack variable between them.
Jan
7
comment OpenGL, multithreading, and throwing destructors
@greyfade: Nonsense. If you're talking about multiple contexts that aren't shared, then its still up to the writer of the application to know which objects belong to which context. No safety is ever perfect; the question is merely what is "reasonable". It all depends on how you structure your code. You can build your application such that the objects that are owned by one context are hidden from the objects owned by another. Such that it's functionally impossible for them to be deleted while the wrong context is current.
Jan
7
comment OpenGL, multithreading, and throwing destructors
" Will it leave the process in a known state? Chances are low." I think chances are lower than that. You'd be in a destructor. I cannot honestly think of a place more likely to leave things in an unknown state when killing a thread. After all, other places don't offer the possibility of killing a thread while the stack is being unwound due to an exception.
Jan
6
comment OpenGL, multithreading, and throwing destructors
"The root of the issue is a concurrency issue." No, it isn't. Concurrency is usually not in play here. The current context is a thread-local construct, so it's not really possible to race on it. Either the context is current in the thread where the object is being destroyed or it isn't. The most you could race on would be some other thread destroying it.
Jan
6
comment OpenGL, multithreading, and throwing destructors
"not that I can understand why you'd want to perform multi-threading with an OpenGL context, as the calls needed to do so are expensive enough to negate any benefit you might get out of it from what I understand" There are many reasons for doing so. Constructing objects in the background. Loading textures in the background. Etc. This is usually done by making multiple, shared contexts. That way, each thread has its own graphics context.
Jul
17
comment Why do game developers prefer Windows?
@Jop: Also, I would like to point out that Valve gets to cheat, because they can basically say to the IHVs, "here's how we're going to render; go make this optimal in your drivers." Other programs don't get to say that. The article you mention even points this out, saying that their work has caused driver changes. They claim that this "benefits all games", but the reality is that it only benefits games that render the way that they do.
Jul
17
comment Why do game developers prefer Windows?
@Jop: ... and? The difference between 270FPS and 303FPS is approximately... 0.4 milliseconds. That's barely more than a rounding error, and in a game that was actually using the hardware (rather than one that throws away 4 out of every 5 frames), it would be an insignificant difference. In short, the performance of D3D nowadays is reasonably comparable to the performance of OpenGL.
Jul
16
comment Why do game developers prefer Windows?
@Jop: Considering how much misinformation is contained in that obvious propaganda piece, I would suggest avoiding that article. How much faster OpenGL's draw calls are than D3D10/11's is very debatable these days; the article cites an NVIDIA PDF from 2006. Saying that Microsoft leaving the ARB is part of a "FUD campaign" is an outright lie. And the rest of the "FUD" stuff is alarmist, anti-Microsoft BS. D3D 9 came to dominate the gaming landscape all on its own, well before the Vista release.
Mar
10
comment Is C++11 Uniform Initialization a replacement for the old style syntax?
"But the syntax using braces doesn't work if type T is an aggregate:" Note that this is a reported defect in the standard, rather than intentional, expected behavior.
Jan
27
comment Why do game developers prefer Windows?
@FlorianBösch: I never claimed that OpenGL was "dead". As for any "messy ursurption" that may or may not have happened, you should provide some evidence of that. Most of that stuff would be internal to the ARB, so it's not likely we will know what was going on behind closed doors. I only stated what is verifiable information. The ARB was adopted by the Khronos group; that's verifiable; whether this was "ursurption" or not is s different matter.
Jan
18
comment Why do game developers prefer Windows?
@MichaelKjörling: WinG was really before all of this. It was more of a precursor to DirectDraw than D3D.
Dec
29
comment Is C++11 Uniform Initialization a replacement for the old style syntax?
@DanielJames: A fair point. I was thinking more in terms of the CTP, but by the time it hits Beta, the standard library will be updated. And Microsoft doesn't let you target older versions of their standard library so easily. Also, hasn't Apple switched over to libc++?