Jump to content

niv3k

Members
  • Posts

    337
  • Joined

  • Last visited

Posts posted by niv3k

  1. i don't know why i read all of this but with my own testing with Leadwerks on an i5 processor (not sure what model) but it ran horribly, around 20fps. intel = joke when it comes to graphics...if you plan doing any game development on a CPU, i'd go the APU route and buy one of AMD's apu's that actually have graphic chips within them. Been hearing good reviews about them. I'll test it out one day whenever the money comes flowing in from winning the lottery(dream).

  2. Assassin's Creed aims more at climbing than actual parkour/wall running. Brink was trying to implement this into the game, but did a terrible job. in Mirror's Edge's tutorial it expresses running against a wooden wall by using W to run, then SPACE to jump against the wall, then SPACE to jump off if you wanted. This is simple. as for this is really all I wanna achieve. nothing crazy extreme. For my goal is to give the user a friendly environment with easy controls.

  3. number of seconds. kinda reminds me of skyrim's SHOUT key. click it, does a weak shout, hold it for 3 seconds, a slightly stronger shout, and then hold it down for a 6 seconds and boom, big shout.

     

    that's what i'm picturing here. your complexity seems irrelevant.

  4. what you dont see is that is just one level. Succession = series. Which in my case, series of the same level with different AI. simple to realistic. that's where most of my time is gonna be spent programming. not a bunch of levels consisting of puzzles and etc. that's why i stated up top like portal but a lot more simpler. smile.png and also my "wall running" isn't gonna be as sophisticated as Mirror's Edge. I don't wanna be that complicated. for the future of my games are meant to be simple, fluent, and so that the user can enjoy without figuring out 20 million different key configurations to do things that can be done easier, by one key or two.

  5. What I meant by the 2nd sentence was using cover, wall running, or sneaking up walls and over obstacles to kill an AI to move on to the next level.

     

    Aiming for something mixed between Mirrors Edge, Splinter Cell, and Future Soldier, but with a more smooth & fluent interaction.

  6. okay...well i've been messing around with this shader and for some reason it doesnt allow it to work on everything like a few feet away...and then there is a stupid line that basically i'm guessing is the distance of how far the shader works...so anyone know how to make it fill up the whole screen...?

     

    post-312-0-79369200-1325872851_thumb.jpg

     

     

    // Variables to play with
    float fNormalStrengthDivider = 8.0;  // The higher the value the less obvious are the normal features 
    int   iNormalIterations      = 12;    // Set this to 4, 6 or 12, higher means higher quality and less performance
    float fDepthTolerance        = 1.0;  // Scan radius for outlines -> higher value, thicker lines (very sensitive)
    float fNormalTolerance       = 1.0;  // Scan radius for normals -> higher value, less small features (very sensitive)
    
    
    // Don't change these
    float fEdgeDepth                = 0.0;
    float fEdgeNormal               = 0.0;
    int   iNormalIterationsInternal = 12 / iNormalIterations;
    
    
    // Calculate the depth difference between the current pixel and 4 surrounding ones.
    // You can adjust the radius with fDepthTolerance. Higher value means thicker lines. (Tested between 0.5 and 3.0)
    float fCurrent = DepthToZPosition(texture2D(texture1, texcoord).x);
    float fRight   = DepthToZPosition(texture2D(texture1, texcoord + vec2(pixelsize.x * fDepthTolerance, 0.0)).x);
    float fAbove   = DepthToZPosition(texture2D(texture1, texcoord + vec2(0.0, -pixelsize.y * fDepthTolerance)).x);
    float fLeft    = DepthToZPosition(texture2D(texture1, texcoord + vec2(-pixelsize.x * fDepthTolerance, 0.0)).x);
    float fBelow   = DepthToZPosition(texture2D(texture1, texcoord + vec2(0.0, pixelsize.y * fDepthTolerance)).x); 
    float fDDX = abs((fRight - fCurrent) - (fCurrent - fLeft));
    float fDDY = abs((fAbove - fCurrent) - (fCurrent - fBelow));
    if(fCurrent<=0.5){                                                                                      
           fEdgeDepth = clamp((fDDX + fDDY - 0.001) * 10.0, 0.0, 1.0);
    } else if(fCurrent>0.5 && fCurrent<=5.0){
           fEdgeDepth = clamp((fDDX + fDDY - 0.02) * 10.0, 0.0, 1.0);
    } else if(fCurrent>5.0 && fCurrent<=9.0){
           fEdgeDepth = clamp((fDDX + fDDY - 5.0) * 10.0, 0.0, 1.0);
    } else if(fCurrent>12 && fCurrent<=15.0){
           fEdgeDepth = clamp((fDDX + fDDY - 7.0) * 10.0, 0.0, 1.0);
    } else if(fCurrent>25 && fCurrent<=28.0){
           fEdgeDepth = clamp((fDDX + fDDY - 12.0) * 10.0, 0.0, 1.0);
    } else {
           fEdgeDepth = clamp((fDDX + fDDY - 20.0) * 10.0, 0.0, 1.0);
    }      
    outputcolor -= vec4(fEdgeDepth, fEdgeDepth, fEdgeDepth, fEdgeDepth);
    
    
    vec2 av2PoissonPoint[12]; 
    av2PoissonPoint[0]  = vec2(-0.326212, -0.40581);
    av2PoissonPoint[1]  = vec2(-0.840144, -0.07358);
    av2PoissonPoint[2]  = vec2(-0.695914,  0.457137);
    av2PoissonPoint[3]  = vec2(-0.203345,  0.620716);
    av2PoissonPoint[4]  = vec2( 0.96234,  -0.194983);
    av2PoissonPoint[5]  = vec2( 0.473434, -0.480026);
    av2PoissonPoint[6]  = vec2( 0.519456,  0.767022);
    av2PoissonPoint[7]  = vec2( 0.185461, -0.893124); 
    av2PoissonPoint[8]  = vec2( 0.507431,  0.064425);
    av2PoissonPoint[9]  = vec2( 0.89642,   0.412458);
    av2PoissonPoint[10] = vec2(-0.32194,  -0.932615);
    av2PoissonPoint[11] = vec2(-0.791559, -0.59771);
    
    
    // Calculate the "dirt", that means color all areas with normals that point towards the camera.
    fCurrent = dot(vec3(0.0, 0.0, 1.0), (texture2D(texture2, texcoord).xyz * 2.0) - 1.0); 
    fRight   = dot(vec3(0.0, 0.0, 1.0), (texture2D(texture2, texcoord + vec2(pixelsize.x * fNormalTolerance, 0.0)).xyz * 2.0) - 1.0);
    fAbove   = dot(vec3(0.0, 0.0, 1.0), (texture2D(texture2, texcoord + vec2(0.0, -pixelsize.y * fNormalTolerance)).xyz * 2.0) - 1.0);
    fLeft    = dot(vec3(0.0, 0.0, 1.0), (texture2D(texture2, texcoord + vec2(-pixelsize.x * fNormalTolerance, 0.0)).xyz * 2.0) - 1.0);
    fBelow   = dot(vec3(0.0, 0.0, 1.0), (texture2D(texture2, texcoord + vec2(0.0, pixelsize.y * fNormalTolerance)).xyz * 2.0) - 1.0);
    float fNDX  = abs ((fRight - fCurrent) - (fCurrent - fLeft));
    float fNDY  = abs ((fAbove - fCurrent) - (fCurrent - fBelow));
    fEdgeNormal = clamp((fNDX + fNDY - 0.01) * 10.0, 0.0, 1.0);
    
    
    for (int i = 0; i < 12; i += iNormalIterationsInternal)
    {
       vec2 v2Offset  = (pixelsize * av2PoissonPoint[i] * fNormalTolerance);
       fCurrent = dot(vec3(0.0, 0.0, 1.0), (texture2D(texture2, texcoord + v2Offset).xyz * 2.0) - 1.0); 
       fRight   = dot(vec3(0.0, 0.0, 1.0), (texture2D(texture2, texcoord + v2Offset+ vec2(pixelsize.x * fNormalTolerance, 0.0)).xyz * 2.0) - 1.0);
       fAbove   = dot(vec3(0.0, 0.0, 1.0), (texture2D(texture2, texcoord + v2Offset+ vec2(0.0, -pixelsize.y * fNormalTolerance)).xyz * 2.0) - 1.0);
       fLeft    = dot(vec3(0.0, 0.0, 1.0), (texture2D(texture2, texcoord + v2Offset+ vec2(-pixelsize.x * fNormalTolerance, 0.0)).xyz * 2.0) - 1.0);
       fBelow   = dot(vec3(0.0, 0.0, 1.0), (texture2D(texture2, texcoord + v2Offset+ vec2(0.0, pixelsize.y * fNormalTolerance)).xyz * 2.0) - 1.0);
       fNDX     = abs((fRight - fCurrent) - (fCurrent - fLeft));
       fNDY     = abs((fAbove - fCurrent) - (fCurrent - fBelow));
       fEdgeNormal += clamp((fNDX + fNDY - 0.01) * 10.0, 0.0, 1.0);
    }							
    
    fEdgeNormal = clamp(fEdgeNormal / (1 + iNormalIterationsInternal), 0.0, 1.0);    
    fEdgeNormal /= fNormalStrengthDivider;
    fEdgeNormal *= (1.0 - pixelbrightness);
    outputcolor -= vec4(fEdgeNormal, fEdgeNormal, fEdgeNormal, fEdgeNormal);

  7. have you already changed the name legally? cause Leadwerks Corporation sounded more BA than Software....

     

    Also if you wanna make an engine, you should come up with a new name for it...or unless the company name can fit in with the engine name..like idTECH (id Software) or CRYengine (Crytek). Epic games created the Unreal Engine... not Epic Engine or something stupid. They decided to make it sound better. Like Techland coming out with an engine called Chrome Engine. Companies tend to use their game engine name with their game products. Like CryEngine made far CRY or CRYsis...Unreal Engine made Unreal, Unreal Tournament, Unreal 2, Unreal Tournament 2003, 2004, UT3. or Techland with Chrome Engine releasing a game called Chrome.

     

    I just think LEADWERKS should stay with corporation even if its like a one man company...lol the engine should be abbreviated as LE3, like it has been. cause the E can go for both ENGINE or EDITOR. and its looks fresh. not L3D...that just seems like Left three dead or something stupid...haha

     

    Leadwerks Corporation FTW

    Leadwerks Engine 3 FTW

     

    the only way you wont be able to market this engine is if you use the name with a car. then you would fail at marketing games or your game engine.

     

    always use some graphic photo or a screen shot from the engine to market.

     

    post-312-0-53741900-1315456894_thumb.jpg

×
×
  • Create New...