Samurai Jack

Members
  • Content count

    592
  • Joined

  • Last visited

Community Reputation

455 Neutral

About Samurai Jack

  • Rank
    Advanced Member
  1. Engine/Framework for web games?

    Unity.
  2. Good form using "this" pointer?

    All answers are correct. But nobody told you the coding convention way. The m_ prefix is more than 20 years old and your code becomes readable for cyborgs not for humans. I hardly advice any C++ coder to take a look at the XNA Game Library how objective code can and should be done. You can easily take over the .NET/C# naming conventions, they play along C/C++ quite nice. What to do?   Private members are written with underscore in camel case (_backDoor) and public members and all functions are written in pascal case (BackDoor). Function parameters are written in camel case (backDoor).   So you would have: private int _x, _y; // internal class parameters or like proposed m_x, m_y and then:   function DoSomething(int x, int y) { _x = x; _y= y; }   The m_ prefix is more than 20 years old. Also the prefixes like p for pointer or lp, or sz, or lpsz are an overkill. If you go into such detail, you should be aware that your code is not intuitive.
  3. Hi!   I would like to represent 1 big texture (1024x1024) as 4 smaller textures (4x 512x512). The reason of doing so is that mobile devices do usually not support textures greater than 4096x4096 and I need to represent for example a 8192x8192 as 4 4096x4096 textures.   So the idea is very simple:   1.) Take one texture and split it into 4 smaller ones 2.) Instead of one 1024x1024 you get 4x 512x512 textures ( Upper left, Upper right, Lower right, Lower left) 3.) According to the UV coordinate, the shader picks the correct tile   When using 1 single texture on a geosphere (icosa) everything looks just fine.   When I use a pixel shader that selects out of 4 textures I do get artifacts on the clipping / boarder regions:   The fragment/pixel shader code: /* Texture clips */ uniform sampler2D clipTopLeft; uniform sampler2D clipTopRight; uniform sampler2D clipBottomRight; uniform sampler2D clipBottomLeft; /* UV from the vertex shader */ varying vec2 srcUv; void main( void ) { /* Scale up source uv */ vec2 dstUv = vec2(srcUv.x * 2.0, srcUv.y * 2.0); /* Clip & wrap the UV */ if (dstUv.x > 1.0) dstUv.x -= 1.0; if (dstUv.x < 0.0) dstUv.x += 1.0; if (dstUv.y > 1.0) dstUv.y -= 1.0; if (dstUv.y < 0.0) dstUv.y += 1.0; /* Select clip */ if (srcUv.x < 0.5 && srcUv.y > 0.5) gl_FragColor = texture2D( clipTopLeft, dstUv ); else if (srcUv.x >= 0.5 && srcUv.y > 0.5) gl_FragColor = texture2D( clipTopRight, dstUv ); else if (srcUv.x < 0.5 && srcUv.y <= 0.5) gl_FragColor = texture2D( clipBottomRight, dstUv ); else if (srcUv.x >= 0.5 && srcUv.y <= 0.5) gl_FragColor = texture2D( clipBottomLeft, dstUv ); } What could be wrong? a) The if statement selection the correct clip b) Destination UVs c) Both ? d) Something else?   Thank you in advance!
  4. Greetings!   I have some issues with writing a character controller for a 3D game like Tomb Rider or Ninja Gaiden Sigma. It is no matter for what language or system, my question is in general: what kind of motion animations do you actually need?   The whole post is about camera based / relative movement. The camera might not be allways 100% behind the player it might follow delayed like a spring or being fixed depending on the location.   The main problem is what should happen when the player engages left or right on the analog stick.   Some games start rotate on spot by 90 degrees. Unity interpolates this even further, if you are applying forward force (vertical analog axis) and applying side force (horizontal analog axis) the animator component will blend the turn left or right motion with the forward motion. Might this be a problem?   Why I am asking that: what about if you press 100% left on the analog stick, will the motion always be some kind of ellipsoid or circular because of the blend? Theoretically, if you use forward force [0..1] where 0 is stand and 1 is running and also the side force or axis angle [-1..1] where -1 is left and 1 is right it is possible, that when you turn left once the character is facing left the 100% horizontal position of the left axis translates to 100% forward force which means running without rotation?   If you stick with that, why are there then: normal right rotation move and sharp right rotation moves?   This interpolation thing drives me crazy. The next thing is for example, what it the player just slightly presses the horizontal axis the movement is very short and very jerky. How to avoid that?   And what about the player is facing straight forward and you press straight down the vertical analog axis. The player should perform a 180 degree rotation like in Ninja Gaiden.   Has anyone some good resources? I have tried almost every controller on the Unity Asset store and sooner or later you will run into a situation where the motion is jerky. Even the standard unity 3rd person controller gets easily messed up when you try to perform either very minimal rotations or a 180 degree turn.   I also think, that modern 3D games like Tomb Rider, Ninja Gaiden or Devil May Cry don't always follow the character instead it looks like every scene has some "hotspots" for the camera and when you reach a segment the camera doesn't follow the player via translation or zoom instead it only rotates in order to keep the player in center of the screen.   Feel free to post.   Thank you in advance!
  5. C++ Graphics Library

    Isn't cairo a vector font rendering system? DeFessler: if you would like to finish a game instead of prototype it for ages I'd kindly recommend Unity 3D :) With C++ you will focuns only on the mechanics/features not on the game in 99% of time. And there is a great probability it will never get done. With Unity you will have your game finished in notime but also get richer for the experience that a coder is not a game producer because you will run out on levers or excitement.   Did you try SDL or Alegro and the other stuff? I wish you all of luck in your project.
  6. Create GAMES not ENGINES.   Take Unity. Worry no more.
  7. OpenGL Sphere mapping problem

    Why don't you just load an .OBJ or something like that. Why bother?
  8. Beginner in programming and game development!

    OMG OMG.   Maybe you should first take a look what unity is and what it provides.
  9. Why don't you use Winapi? Do you really need DirectInput or XInput? Winapi provides a lot of joystick functionality. Look for joySetCapture in winmm.   https://msdn.microsoft.com/en-us/library/windows/desktop/dd757114(v=vs.85).aspx https://social.msdn.microsoft.com/Forums/vstudio/en-US/e7163456-b3bb-4ea2-8025-bda8072f5246/what-is-the-best-way-to-use-joystick-in-c http://www.codingmonkeys.com/index.php?topic=1183.0
  10. Books to help me learn Programming Languages

    Why bother? If you want to actually FINISH some kind of game take Unity.   Here you go: youtube video tutorials on simple things   http://unity3d.com/learn/tutorials/projects/roll-a-ball
  11. Making Machines Learn

    Great article. A little off topic: Where did you get the pictures? Great stuff :D
  12. Here you go:   http://justcheckingonall.wordpress.com/2008/08/29/console-window-win32-app/   You might also like: http://msdn.microsoft.com/en-us/library/windows/desktop/ms682073(v=vs.85).aspx http://stackoverflow.com/questions/5068392/create-window-console-inside-main-win32-window http://www.cplusplus.com/forum/windows/58206/
  13. OpenGL QT vs. wxWidgets for OpenGL

    I had the same issues, so here are my thoughts:   - With QT there is one additional step, because QT uses an inhouse "mid" compiler. So whenever you use QT only libs, headers and sources won't cut it.   Before building the solution you have to use the QT compiler to build the GUI stuff. This can be very frustrating. So it won't be only code & play. You   will have to update your tool chain too.   - vxWidgets has one major design flaw: it supports no delegates. Which means: for every GUI object you create, you have to define a new class. Not an instance. A new class.   So if you have 3 buttons, you have to define 3 classes to handle their messages (class button1 : wxObject, class button 2 : wxObject etc...)   Maybe you could go with "crazy eddie's"  GUI which runs inside OpenGL ?   http://cegui.org.uk/   Or maybe you go the .net way?
  14. Paper Cowboys Alpha 1 Now Available!

    This looks like a complete copy of Sunset Riders.