# All Activity

1. Past hour
2. ## Problem with Cubemaps

Hello and thanks for your answer!! I've been looking forward to it but I think it is more than that. I think I have something wrong with the rotations of the camera. Thanks!
3. ## Change Animation in OpenGL

The first parameter defines the interval the call will be made. You've specified in no time. (so it may only fire once, not sure on that) Moving on... Here is an example of one way, you could do it. // global access float rotation = 0.f; float step = -2; // inside an update or timer function { rotation -= elapsedTime * 40.f; if (rotation < -90) { rotation = 0.f; step += 1.f; } } // inside your draw callback { glMatrixMode(GL_MODELVIEW); glLoadIdentity(); glTranslatef(step, 0, 0); glRotatef(rotation, 0, 0, 1); glTranslatef(0, 0, -5); // so I can see it glBegin(GL_QUADS); glColor3f(1.f, 1.f, 1.f); glVertex3f(-1, 0, 0); glVertex3f(0, 0, 0); // pivot point is already on the side(right bottom) glVertex3f(0, 1, 0); glVertex3f(-1, 1, 0); glEnd(); } I've cheated here perhaps with the arrangement of the vertices. A normal rotation will appear correct the first 90°. What I've chosen to do is only use that range of 0° to 90° and when I reach my rotation, I reset to zero and advance the translation variable I'm tracking. In computer graphics, the goal is to create the illusion with the least amount of background work. Have you considered a modern openGL environment?
4. Today
5. ## Hemisphere used for lighting and heavily smoothed meshes

hmmm... One idea would be to lerp between face normal in interpolated normal with face normal dot product, so at shallow angles expose low poly mesh but prevent artifacts. I guess this works fine for N dot L, because at silhouettes the real mesh becomes visible anyways. Curious how this would look for integrated lighting over the hemisphere...
6. ## Hemisphere used for lighting and heavily smoothed meshes

Having light rays below the hemisphere is one thing... But this situation can also cause the viewing ray to be below the horizon (so N dot V is negative). Some BRDFs give crazy results in that case, so you have to clamp it to zero... and if you clamp it to zero, you can end up with a weird edge area with flat/cut-off looking shading. (FWIW, both light rays and view rays should be of equal importance because of Helmholtz reciprocity -- swapping L and V in a BRDF should give identical results -- but in practice I've noticed some differences) I'm interested in workarounds too 😅 Simple solution is to just try not to use such low-poly meshes such that the vertex normal vs triangle normal can be extremely different... Also, if you've baked normal maps from a very high poly mesh onto a low poly one, then the normal map will somewhat correct for this issue on the low poly mesh (but at the same time, may also cause the problem...) If you do this for viewing rays, you end up with ugly black regions that show up around mesh silhouettes... And if you do it for light rays but not view rays, you've violated Helmholtz reciprocity (fine for a hacky renderer, not for a film quality offline one).
7. ## C# Trying to implement a basic utility base AI setup in Unity

So I am attempting to implement a basic start to a utility based AI in Unity and I have something that seems to be working and wanted to get any impressions people might have about how I have it setup, all the relevant code can be found here that implements a basic AI for moving and being idle: https://gist.github.com/ryanzec/26fa3558d539f782a2101c241081622c
8. ## 1st SDL Engine Drawing BMP Blank Screen

Start by checking for errors wherever you have SDL calls, especially where you're loading and creating the texture. Check the return value, then call SDL_GetError() if needed. Use the documentation to determine how to properly check for errors; the easiest way is to just type in the function call name in the search box, top left. For example: Your very first call is SDL_LoadBMP. The documentation for this call says that this returns null if there was an error. Thus, check the return value to see if it's null before going continuing on.
9. ## Game engine for a 10 years old

I'm with "Chillehh", Game Maker 4 through to 7 was my go-to toys when I was 10-14, (mid-2000s). It has some great built-in tools for animation, teaches you about object orientation, (a a simple level), and it just works! I didn't have internet, so I just looked at the samples. The beginner level is mostly putting boxes in order, a great way to learn an visualize the code in your head. Then later on you can learn/teach GLM, the scripting language which mostly does away with all the boxes. You have if-statements, loops and other common things to scripting. Take a look at it, it's(at least was) great! Coding with boxes(visually) Good tutorial: More advanced coding:
10. ## Dynamic lighting in Fateless

Dynamic lighting now works in Fateless. There are still no normals and no shadows, but hopefully this will be the necessary breakthrough to make it look from "whack" to "not that bad." Directional spotlights are the next goal. The overall mesh of the buildings and terrain should reflect the skybox, so in this case ambient light should probably be more orange. Get it on Google Play
11. ## A good 3D math library in C for OpenGL?

I would recommend GLM, since it is made to have similar styntax to GLSL, so you can write your math in the same way; both server-side and client-side. Especially if you enable swizzling, "vec3 v = other.xyz;". It is not a DLL, so no linking required. I'm with "a light breeze" on not dropping C++. It will probably serve you better to work in C++ than C, if you want to make games and work with graphics. There is no need to learn C first and then move on to C++, since the languages grow increasingly distant by each new release. Not sure about C-compatibility though. CGLM seems to be GLM, so I would go with that. https://www.khronos.org/news/permalink/new-optimized-opengl-graphics-math-glm-for-c-feedback-requested https://github.com/recp/cglm Good luck!
12. ## Fateless

Album for Fateless
13. ## A good 3D math library in C for OpenGL?

I am confused by the term dll as math libraries i think of (vectors, matrixes, quaternions, boudning shapes, rays, collisions, intersections, etc. pp) usually come as header-only files. How about data types and precision that are much easier to implement in C++ (templates) than in C ? Almost all math libs i know, if they are not for pure demonstration purposes, offer that functionality.
14. ## A good 3D math library in C for OpenGL?

If you're having trouble with DLLs in C++, wouldn't it be a better idea to drop the DLLs than to drop C++? Seriously, DLLs are a huge pain in the ass for basically no benefit. The only time DLLs make sense is when different parts of the project need to be distributed under different licenses. That's a legal reason for using DLLs. There is no technical reason for using DLLs, ever.

Hello fellow Game Developers, this is 2GuyGames. We are a fresh startup company situated in Germany and we reach out to you for our market analysis. We want to know how you use tools in your game development. We do this to get a feeling for what the market (that means you, the developers) has and what it needs, so we can develop tools in the future that help make game development even better. We created a quick survey (1-2 minutes) for you to take. If you could fill it out and give it to your friends and collegues, that would be a huge help :) link: https://www.surveymonkey.de/r/L58K6TC﻿

17. ## Looking for muiscal feedback and career advice

Great examples thanks! I see what you mean more clearly now. Yes, the attack and envelope of the sample generated in most of the VST's I use can be manipulated, I'll mess around with that on my next composition to emphasize the rhythmic feel.
18. ## 1st SDL Engine Drawing BMP Blank Screen

Hello I have bought the book SDL game development from amazon to learn SDL2 game programming on Ubuntu. I have my first game engine up and running but when I add code to draw a BMP in the top left of the screen I just get a black screen when I run it. Can anybody help me solve this I would really appreciate it. Also I am not sure if I have the texture creation code on lines 8-15 in the right place, I tried moving it around but it didn't make a difference. main.cpp <code> #include <SDL2/SDL.h> #include "Game.h" #include "Game.cpp" int main(int argc, char * args[]) { Game * g_game = new Game; g_game->init("Chapter 1", 100,100,640,480,false); while(g_game->running()) { g_game->handleEvents(); g_game->update(); g_game->renderer(); } g_game->clean(); return 0; } <code/> Game.cpp <code> #include "Game.h" #include <iostream> bool Game::init(const char* title, int xpos, int ypos, int width, int height, bool fullscreen) { SDL_Surface * pTempSurface = SDL_LoadBMP("assets/rider.bmp"); m_pTexture = SDL_CreateTextureFromSurface(m_pRenderer,pTempSurface); SDL_FreeSurface(pTempSurface); SDL_QueryTexture(m_pTexture, NULL,NULL,&m_sourceRectangle.w,&m_sourceRectangle.h); m_destinationRectangle.x = m_sourceRectangle.x =0; m_destinationRectangle.y = m_sourceRectangle.y =0; m_destinationRectangle.w = m_sourceRectangle.w; m_destinationRectangle.h = m_sourceRectangle.h; int flags = 0; if (fullscreen) { flags = SDL_WINDOW_FULLSCREEN; } // attempt to initialize SDL if(SDL_Init(SDL_INIT_EVERYTHING) == 0) { std::cout<<"SDL Init Success\n"; // init the window m_pWindow = SDL_CreateWindow(title, xpos, ypos, width, height, flags); if(m_pWindow != 0) //window init success { std::cout<<"Window Creation Success\n"; m_pRenderer = SDL_CreateRenderer(m_pWindow, -1, 0); if(m_pRenderer !=0) // render init success { std::cout<<"Renderer Creation Success\n"; SDL_SetRenderDrawColor(m_pRenderer, 0,0,0,0); } else { std::cout<<"Renderer Init Fail\n"; return false; // renderer init fail } } else { std::cout<<"Window Init Fail\n"; return false; //window init fail } } else { std::cout<<"SDL Init Fail\n"; return false; // SDL init fail } std::cout<<"Init success\n"; m_bRunning = true; // everything inited successfully // start the main loop return true; } void Game::renderer() { SDL_RenderClear(m_pRenderer); // clears the renderer // to the draw colour SDL_RenderCopy(m_pRenderer, m_pTexture, &m_sourceRectangle,&m_destinationRectangle); SDL_RenderPresent(m_pRenderer); // draw to the screen } void Game::update() { } void Game::clean() { std::cout<<"Cleaning game\n"; SDL_DestroyWindow(m_pWindow); SDL_DestroyRenderer(m_pRenderer); SDL_Quit(); } void Game::handleEvents() { SDL_Event event; if(SDL_PollEvent(&event)) { switch (event.type) { case SDL_QUIT: m_bRunning = false; break; } } } <code/> game.h <code> #ifndef __Game__ #define __Game__ class Game { public: Game() {} ~Game() {} bool init(const char* title, int xpos, int ypos, int width, int height, bool fullscreen); void renderer(); void update(); void handleEvents(); void clean(); // a function to access the private running variable bool running() {return m_bRunning;} private: SDL_Window * m_pWindow; SDL_Renderer * m_pRenderer; SDL_Texture * m_pTexture; //the new SDL Texture variable SDL_Rect m_sourceRectangle; // the first rectangle SDL_Rect m_destinationRectangle;// another rectangle bool m_bRunning; }; #endif /* defined(__Game_h__) */ <code/>
19. ## Change Animation in OpenGL

Hi @GoliathForge, I can move to the world coord. then rotation then translation. However, it only has the final result (the new rotated cube) not the animation. I try to use the below function glutTimerFunc(0, Timer, 0); but it only happens for one rotation action. global float angle=0.0f; In the void Display(), rolling the cube with glRotatef(angle, 0, 0, 1); at the end of function with angle += 10. I do not know when I can call the function for translation. for the 1st action, I translated the lower right corner to (0,0,0) then rotates from 0 -90 degree for animation. then the 2nd action is wrong with the coordinate. In OpenGl when I used glutDisplayFunc(Display); it always calls back the Display() function that I could not modify the next action.
20. ## Why is the wireframe rendering so slow compared to solid?

@Green_Baron That's some great work, I'll see if I can pull your project. I'm still not entirely convinced it's about culling in general just because of how tiny the scene size is, the gfx should be able to easily render 100k tris even with no culling at all at more than 80fps, but I will try to get it working and see if it helps. Thanks, I've enjoyed looking over all of your projects if nothing else. 😋
21. ## The Mills

Concept Art for Indie Survival Game The Mills
22. ## The Mills | Survival Game

What is The Mills? The Mills is a despair survival game set in a bleak, post-apocalyptic world. As The Engineer, the lone human among robots, you scavenge for resources. Each of the robots is unique – some are kind, some frightening, and some aggressive. As you try to stay alive, you must constantly make choices: will you focus on your survival alone, or help the robots who come across your path? Development Live Stream: Twitch

24. ## Creating the Cinematic Game Intro Animation

Survival Game | The Mills | Hello! Today I integrated the cinematic animation for the intro of the game. I had made for the teaser trailer to embed the animation within the actual game's scene. This was a horrible idea - every time I had to playtest the game, of course we had to watch the intro animation. Anyway, I moved over the intro of the animation to another scene that we can get through the Main Menu. I am used Unity's Cinemachine for the cameras but using Maya for animation so there was a disconnect. Tomorrow or later today I'll try using the timeline of Cinemachine better. Fixed: The Navmesh (what lets players and robots know where they can walk) was acting up. I increase the Voxel in the advance settings back to .07. I dropped it too low before as I was trying to get a better response, but I went too over board with it. To Do - Things on my mind Add the Grenade for the player to be able to craft to the programming. The item can already be made to explode robots (to loot them). Use Zbrush to sculpt the main characters hair. Right now nobody know that its suppose to be a girl. Use Timeline for Cinemachine Check out if the entire scene will work better with ambient light. The robots right now are either too unlit or the 'specular' goes crazy when lit. Game Dev Log | Today's Screenshot
25. ## :)

I thought I heard the low poly wolf howl

27. ## unirule

• 32
• 12
• 15
• 15
• 25

1. 1
Rutin
25
2. 2
3. 3
4. 4
5. 5
• ### Member Statistics

• Total Members
256634
• Most Online
6110