Jump to content

  • Log In with Google      Sign In   
  • Create Account

Interested in a FREE copy of HTML5 game maker Construct 2?

We'll be giving away three Personal Edition licences in next Tuesday's GDNet Direct email newsletter!

Sign up from the right-hand sidebar on our homepage and read Tuesday's newsletter for details!


We're also offering banner ads on our site from just $5! 1. Details HERE. 2. GDNet+ Subscriptions HERE. 3. Ad upload HERE.


blubberbert

Member Since 03 Apr 2009
Offline Last Active Jun 11 2014 09:51 AM

#5152873 GLFW/GLUT/GLU ... whats the best?

Posted by blubberbert on 11 May 2014 - 09:53 AM

as for tutorials, id recommend www.open.gl, its one of the best tutorials out there for OpenGL 3.x/4 imho

 

if youre going for 3.x/4, all the "GLU, GLUT" thingies youll need are

 

GLEW (GL extension wrangler library) - will give you access to all the OpenGL functions you need

 

and a library that creates the context for you (i.e. opens a window for you to draw in, handles input for you, etc.)

GLFW and SDL would be my recommendations, SDL offers a little more extra functionality like networking/sound/image loading, GLFW is just context creation and input handling, youll have to load textures yourself or use another library for that (like SOIL)




#5152855 Alternative to glFramebufferTexture for OpenGL version 3.1

Posted by blubberbert on 11 May 2014 - 07:50 AM

why not use glFramebufferTexture1D/2D/3D instead?




#5063979 expected template ambiguity

Posted by blubberbert on 22 May 2013 - 05:42 PM

i expected the following code to raise an error because the compiler doesnt know wich func to use, the template or non-template one
#include <string>
#include <iostream>
#include <cstdlib>
 
template<typename T>
T func(T arg) { return arg; }
 
std::string func(std::string arg) { return "surprise!"; }
 
 
int main(int argc, char **argv) {
    std::cout << func(std::string("no surprise please!") );
    system("PAUSE");
    return 0;
}
however the code always calls the non-template function. 
1.Why is that?
2.If that kind of behaviour is part of the standard (calling non-template functions rather than fitting templates), whats the point of the special syntax for template specialization?
i.e.
template<>
std::string func<std::string>(std::string arg) { return "surprise!"; }



#5014050 Developering an anticheat for a game

Posted by blubberbert on 24 December 2012 - 05:19 PM

well having written some hacks for multiplayer games like QuakeLive or Call of Duty 4, i think the best way is to check critical functions in the graphics API that could be hooked and used for hacks. obviously you should also check the functions in your own code.

punkbuster seems to only scan the first bytes of DrawIndexedPrimitive for example and you can easily circumvent that by doing a hook mid-function, so thats a mistake you dont want to make ;)

you might also set some breakpoints on read access to critical structures (for example player positions)
however i dont know if this would be possible in real time.


another way is to check all 3rd party modules for signaturs of known hacks (i think most anticheats rely a lot on this).

 

if you like a challenge, you can also try to write some kind of intelligent cheat detection code that detects if a piece of code accesses data it shouldnt access (your games internal data)

 

those are just ideas though, ive never done anything like this
 




#4816880 help me to finde the track in opengl game industry

Posted by blubberbert on 28 May 2011 - 01:48 PM

one thing to keep in mind though when working with VC,
if you want to keep your project crossplatform check wether the source compiles with GCC because i found that VC sometimes accepts things GCC doesnt


PARTNERS