Spatial Hash Grids & Tales from Game Development
Follow me on:
Twitter: https://twitter.com/iced_coffee_dev
Github: https://github.com/simondevyoutube/
In this project we're covering spatial hash grids, or spatial hashing, people seem to call it all sorts of different names. Anyway, we'll be covering a spatial hash grid implementation in JavaScript, working through it line by line. We'll walk through the code step by step, explaining it as we go, and as an added bonus, I've implemented a small scene in Three.js with hundreds of moving agents that we can use to visualize what's visible from the perspective of any given agent.
I'll also tell a small but interesting little story from way back when I was working on xbox/playstation games. Somewhat related to the topic.
Having a comprehensive understanding of data structures is fundamental to being a solid game developer. You need to understand the trade-offs, not just in time complexity. Questions like memory consumption, implementation and on-going maintenance costs, these all factor in. Sometimes simple solutions, implemented well, that get you 95% of the way there but at a fraction of the developer cost, are the way to go.
The three.js library is available in JavaScript for cross-browser 3d graphics, wrapping webgl and making high level functionality available in the web browser. It’s an extremely mature and well maintained library that I use for many of these videos.
In the video, we cover:
* What problem are we trying to solve? We'll look at examples from major games to understand their needs in different situations.
* We'll touch on alternative spatial data structures, and discuss the tradeoffs.
* I'll talk about an instance in my career that's relevant to this problem
* Step by step walk through for the full implementation of a basic spatial hash grid.
Видео Spatial Hash Grids & Tales from Game Development канала SimonDev
Twitter: https://twitter.com/iced_coffee_dev
Github: https://github.com/simondevyoutube/
In this project we're covering spatial hash grids, or spatial hashing, people seem to call it all sorts of different names. Anyway, we'll be covering a spatial hash grid implementation in JavaScript, working through it line by line. We'll walk through the code step by step, explaining it as we go, and as an added bonus, I've implemented a small scene in Three.js with hundreds of moving agents that we can use to visualize what's visible from the perspective of any given agent.
I'll also tell a small but interesting little story from way back when I was working on xbox/playstation games. Somewhat related to the topic.
Having a comprehensive understanding of data structures is fundamental to being a solid game developer. You need to understand the trade-offs, not just in time complexity. Questions like memory consumption, implementation and on-going maintenance costs, these all factor in. Sometimes simple solutions, implemented well, that get you 95% of the way there but at a fraction of the developer cost, are the way to go.
The three.js library is available in JavaScript for cross-browser 3d graphics, wrapping webgl and making high level functionality available in the web browser. It’s an extremely mature and well maintained library that I use for many of these videos.
In the video, we cover:
* What problem are we trying to solve? We'll look at examples from major games to understand their needs in different situations.
* We'll touch on alternative spatial data structures, and discuss the tradeoffs.
* I'll talk about an instance in my career that's relevant to this problem
* Step by step walk through for the full implementation of a basic spatial hash grid.
Видео Spatial Hash Grids & Tales from Game Development канала SimonDev
Показать
Комментарии отсутствуют
Информация о видео
Другие видео канала
How I Optimized My JavaScript Project (Complete Walkthrough) | Faster Spatial Hash GridsCoding Challenge #98.1: Quadtree - Part 1I made an EVEN BETTER MinecraftFlocking Simulation: Boids (JavaScript)I Tried Making a 3D MMORPG Game in JavaScriptProcedural Plant Generation with L-Systems3D World Generation: #3 (Quadtree & LOD)Pass by Value vs Reference (JavaScript): Memory, Functions, and more!Writing a Particle System (using Three.js)I Tried Making a 3D RPG Game in JavaScriptUsing a Clever Strategy to Manage a Busy Train Network in Mini MetroGeohash: Deep Intuitive Understanding in under 7 Minutes3D World Generation: #5 (Texturing): Triplanar Mapping/Infinite Splatting/Blending/BombingCan JavaScript Go Faster? Threading in JavaScript (Data Structures & Optimization)3D World Generation #8: Floating Origins for Bigger Worlds (JavaScript/Three.js)How Slow is JavaScript Really? JavaScript vs C++ (Data Structures & Optimization)3D World Generation #2 (Perlin Noise)Loading Models (using Three.js) - Both Static and Animated!Memory, Cache Locality, and why Arrays are Fast (Data Structures and Optimization)