🎉 Celebrating 25 Years of GameDev.net! 🎉
Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!
Latest C++ Activity
This seems like the problem:
// Bound center in View space
glm::vec4 distanceFromCamera = modelViewMatrix * glm::vec4{bound.center, 1.0f};
float d = glm::length(distanceFromCamera);
You are including the W component of the distanceFromCamera vector in the length calcu…
@Aressera I have managed to link everything but I have one problem. If I started a project as a C++ project but it depends on some .c files, how do I add them to the project folder? I opened the folder on my desktop and dragged and dropped the .c files where my main.cpp is but in the xcode app, it …
Your function ‘set_union' is doing more than finding the union; it's populating both sets, a and b. This should be done before calling set_union, which would be in main.
Good.
You know hat's next: Make a function to visualize the rectangles 60 times per second using SDL / OpenGL, move one with the keyboard, test for all collisions, work on a game… \:D/
We are pleased to announce the release of Matali Physics 6.5, the next significant step on the way to the seventh major version of the environment. Matali Physics 6.5 introduces a number of improvements and fixes to Matali Physics Core, Matali Render, Matali Content, Matali Synth and Matali Games m…
SadMachine said:
Original ideas are not. That's why companies Reboot, Remaster and Remake so many products (movies and games alike).
They remaster their old stuff because it was successful, not because it was good ideas.
If the ideas are good, they make a new game with the same idea, but putting a ‘2’…
Please, test my guide and write if something is wrong: How to run SDL3 app on Web with WebAssembly on Windows
I'm developing a Hierarchical LOD Nanite-style system using meshoptimizer. I'm having troubles with how to create a local index buffer from a group of merged meshlets. Is there a correct way to create a local index buffer from a group of merged meshlets? Do you have any suggestions or advice on tha…
- Implemented clustered rendering.
- Reworked light attenuation as a range.
- Implemented color grading.
- Implemented context blocks in the scene file parser.
- Removed deferred rendering.
- Reworked submesh components like pass components.
- Implemented Mikkelsen tangent space s…
Update 5 How to write C++ variables for Unreal blueprint; UPROPERTY Basics
What's wrong with just putting EditAnywhere on everything? Here I explain the different mark up keywords for configuring UProperty variables for the editor.
The reason you don't want to use EditAnywhere on everything, …
Went ahead and put a tutorial on github with the code.
https://github.com/hayesgr/Dungeon_gen/tree/main
Rewaz said:
That's what I'm afrid of, maybe WoW does a Lerp, and don't care and since it's just lerping it's almost always in the same position as the server, prob with a check like I said before, that's my concern, that it become and issue later.
For any sufficiently complex system, the number of po…
congrats! keep going. + start by just detecting the edges of the screen instead of a full AABB.
It's probably appropriate to ask how much experience you have with databases. I.e. do you need help at the level of how to represent game data at all, or do you want to hear if anyone with relevant experience have some tips that could come in handy?
Why are you not using PostgreSQL?
I sometimes…
Hope it works.
Tutorial: https://github.com/Noah11012/sdl2-tutorial-code/tree/master/tutorial3_keyboard_movement
pbivens67 said:
Is the ampersand point to the address of the rect values(?)
Browse this google search: pointer vrs reference c++
Also, look at the first and second answers at this stackOverflow related question.
In here you'll find a visual comparison example and a second point of view when talking abo…
@Juliean Thank you this is useful. It has changed my way of thinking and approaching my engine.
Since it is certainly possible to animate a pawn walking around, you have a problem with some random mistake you made, not with insufficient knowledge of “implementing AI into UE C++ games”. This means that you need a debugging effort, not a learning effort.
As a debugging strategy, bisection should…
good.
Also experiment with pass argument by pointer or reference.
In this particular case it could be as simple as//apply the image
SDL_Rect my_experimental_rect = SDL_Rect(100, 0, 0, 0); // todo: move me outside the main loop
SDL_BlitSurface(gHelloWorld, 0, gScreenSurface, &my_experimental_rect);
&…
A galaxy is a really large place.
I've tried these things. I tried 5 different methods of attacking the problem, 3 of them with regard to the ray generation section, 2 of them with regard to the light transport section. Perhaps I was missing something trivial. :(
Thanks again so much for your guidance!
Welcome back ! Last week, I talked about the background of why I am creating a custom assembly-generator. This week, I'll go more into details about the framework I wrote, that allowed me both to disassemble as well as assemble code.
Getting started
Now previously, I mentioned how my own assembler wa…
Yay, some progress : )
Using the commands, i was able to mount the additions disc in Garuda Linux for the first time. I can not update this OS, it says something about missing keys. Trying to install additions anyway, i see compiler errors, probably related to the new Zen Kernel. And i do not really…
taby said:
Technically, subsurface scattering is not necessary for diffuse reflection. All you do is randomize the surface normal for diffuse reflection.
It's about scale. For diffuse reflection, we can assume the scattering radius is so small we can ignore it, while change in direction is large.
For …
We are pleased to announce the release of Matali Physics 6.4, the significant step on the way to the seventh major version of the environment. Matali Physics 6.4 introduces a number of improvements and fixes to Matali Physics Core, Matali Render, Matali Content, Matali Sound and Matali Games module…
Additional experiments with displacement mapping using OpenGL tessellation shaders. Textures from: Textures.com
More experiments with terrain rendering, trying to add finer detail using a displacement map, applied over a procedurally generated terrain.
Textures from: Textures.com and FreePBR.com
The past 2 months I've been working on moving away from Unity. Over the years I've made a lot of editor tools for use in Unity, and I found that Godot didn't really suit my project, so I decided to make a custom engine that has all the runtime features that I use in Unity, and to which I would expo…
An introduction to the UTYPEs used in Unreal C++. UInterface, UEnum, UStruct, and UClass. I walk through writing each example and discuss some esoterics/nuances you should know.
0:00 Intro
0:15 USTRUCT
0:28 UClass Macros and UHT
0:45 UClass Features UPROPERTIES, UFUNCTIONs, and plain-old c++
1:18…
Improved bloom + experiments with adaptive exposure.
Bloom is heavily inspired by the method described by Jorge Jimenez in his great slides here: http://www.iryoku.com/next-generation-post-processing-in-call-of-duty-advanced-warfare (starts from slide 144)
A small walk inside my procedurally generated terrain. Rendered in OpenGL.
The terrain was created using multiple layers of perlin noise and applying hydraulic erosion on it.
Grass and flowers are rendered using billboards and instancing.
We are pleased to announce the release of Matali Physics 6.2, the first step on the way to the seventh major version of the environment. The latest version brings changes necessary to implement effective navigation and wayfinding algorithms as well as complex AI behaviors, including group behaviors…
A conversion guide from Blueprint to C++ and vice versa. Most every BP feature demonstrated in C++ code instead.
I wanted to create a broad and comprehensive overview of using C++ and BP in the unreal engine. I'll explore these topics in much more depth in later videos.
But this video should be enoug…
The Orx community is pleased to announce the 1.14 release. This marks the 14th yearly major release since 1.0 in 2009.
There are quite a few changes in this release. Here are some highlights:
Bundle
, a new extension that can automatically discover and pack all your game resources, either inside…
How to make a new C++ actor and use it in blueprint!
Some Dos-and-Don'ts of creating Unreal C++ classes that can be used in the editor and blueprint.
Basic Unreal Header Tool Introduction and how to properly mark up your classes to be used with the Engine.
Unfortunately this video was recorded …
How to set up some commonly used AAA tools for C++ programmers who make games in Unreal!
(Scroll down for video)
Once you get into the industry, you will find that there are some common work flows and tools used among AAA developers at various studios. I go over some of these tools and how to set the…
As a hobbyist one is often faced with severe time constraints. There are day jobs to hold, groceries to shop, movies to watch, walks to take and friends to see. One way to overcome this issue is by using one of the known game engines like Unity, Unreal or Godot. But for me, the joy of game developm…
- Fixed COM binding, and finished implementation of a basic C# viewer application.
- Implemented support for multiple lighting models in the same scene.
- Improved PCF shadows, sampling a Poisson disk.
- Castor3D now uses a reversed Z buffer.
- Drastically improved overlays preparation and rende…
So a couple of months ago, my friend and I both wanted to work on some sort of programming project together. We both work in software engineering but come from different backgrounds, I studied a BSc in Games Programming and he studied a BSc in Computer Science. Our idea was that we wanted to essent…
I am a professional programmer, but I do not develop games for a living. In the past, I have brought you the fine small3d game development library, open source titles like Gloom, Avoid the Bug and Frog Remixed …
We are proud to announce the release of Matali Physics 6.0, the sixth major version of Matali Physics environment. The latest version introduces groundbreaking changes both from the technical and functional side, moving Matali Physics environment to direct game creation solutions.
What is Matali Ph…With no-one coming forward to offer artistic support I pushed forward and reworked / improved to my limitations, all background graphics.
Then added the remaining lives indicator and improved AI attack patterns,
From very early on in the games development I wanted to use a restricted number of textur…
It's over, I've finally completed my from scratch game project!
The final stretch has been far from glorious.
Rather than making features, it has been nonstop bug fixing.
To reach feature complete, I started just writing down non critical bugs rather than fixing them.
But after feature complete, I star…
Linear interpolation is everywhere. Games, 3D animation, image creation tools and much more all rely heavily on interpolation, so having a thorough understanding of linear interpolation is extremely important.
This text is somewhat geared towards game developers, however it's general enough to apply…
A level editor that can be used to make mods.
I've strived to make tools that can be used to add mods to the game, and build the game through those tools.
This update brings the level editor.
You edit the level with a free form WASD camera.
You can create, save, and load level JSON files …
The Space Jump effect is pretty simple when looking at its individual components.
Previously I created a 3D star field for the environmental rendering.
I use the 3D locations of these stars in the effect.
When the effect starts, I start cranking up the light emitted for each star.
This is done by just …
The Orx community is pleased to announce the 1.13 release. This marks the 13th yearly major release since 1.0 in 2009. There are a substantial amount of changes in this release. Some highlights include:
- 70+ updates or new features
- Added a new SoundSystem plugin based on MiniAudio: All platforms now s…
I'm happy to announce the release of Castor3D, version 0.12.0
Castor3D is a 3D engine written in C++ 17.
It works on Windows and Linux.
It relies on Vulkan as a rendering API, and uses Ashes to extend this support to Direct3D 11 and OpenGL.
Some of the changes:
- Now using RenderGraph to build a frame gra…
Esenthel Engine huge update - Switch, vs Unreal/Unity, SuperRes, AO, MotionBlur, Bloom/Glow/Emissive
Esenthel Engine - http://esenthel.com/ - the Free and Open Source Game Engine
Just got a Huge Update:
#1) Nintendo Switch™ supportEsenthel Engine Nintendo Switch™ support is now complete and available to all Nintendo Authorized Developers.
Download Esenthel Engine from - https://github.com/Esenth…
small3d is a small, cross-platform 3D game development library I have put together and have been maintaining over the past few years. This is a tutorial on creating a ball in Blender, and then writing a C++ program that loads it and moves it around on the screen, using small3d. Alternatively you ca…
If you are a software developer working in the video game industry and wondering what else you could do to improve the quality of your product or make the development process easier and you don't use static analysis – it's just the right time to start doing so. You doubt that? OK, I'll try to co…
There is a video version of this tutorial available here which compliments the article version:
https://www.youtube.com/watch?v=qRuVgGOL3fI
Welcome to the 2D UFO game guide using the Orx Portable Game Engine.
(Updated for 2021 and to support version 1.12 of Orx)
My aim for thi…
Originally posted on Troll Purse development blog.
Unreal Engine 4 is an awesome game engine and the Editor is just as good. There are a lot of built in tools for a game (especially shooters) and some excellent tutorials out there for it. So, here is one more. Today the topic to discuss is di…