O

Our Machinery

ourmachinery.com · Company blog · on HN since 2017

The Our Machinery team writes about building a game engine in C, covering code structure, memory, audio, and development workflow.

What HN saysCommenters point to its post on allocating large virtual memory ranges and its move away from GitFlow, and recommend the blog for engine development writing.
36HN people shared it
13linked it in comments
34stories submitted
697story points
4 years agolast shared
2017people per year2026

Most-shared posts

  1. 1
    Header files (.h) cannot include other header files
    6 people · 6 points · first shared 2017 · discussion on HN
  2. 2
    A New Kind of Game Engine in C
    5 people · 8 points · first shared 2017 · discussion on HN
  3. 3
    Step-by-Step: Programming Incrementally
    4 people · 79 points · first shared 2020 · 12 comments on HN
  4. 4
    Virtual Memory Tricks
    3 people · 167 points · first shared 2017 · 43 comments on HN
  5. 5
    OMG: Our Machinery Guidebook
    3 people · 114 points · first shared 2019 · 29 comments on HN
  6. 6
    Writing a Low-Level Sound System – You Can Do It
    2 people · 8 points · first shared 2020 · discussion on HN
  7. 7
    Minimalist container library in C
    2 people · 3 points · first shared 2018 · discussion on HN
  8. 8
    Moving away from GitFlow
    2 people · 2 points · first shared 2017 · discussion on HN
  9. 9
    Data structures part 1 bulk data
    2 people · first shared 2019
  10. 10
    Data Structures Part 3: Arrays of Arrays
    1 people · 155 points · first shared 2019 · 20 comments on HN
  11. 11
    High-Level Rendering Using Render Graphs
    1 people · 54 points · first shared 2018 · 9 comments on HN
  12. 12
    A Taxonomy of Bugs
    1 people · 34 points · first shared 2022 · 8 comments on HN
  13. 13
  14. 14
    Our Machinery Guidebook
    1 people · 20 points · first shared 2022 · 7 comments on HN
  15. 15
    Borderland Between Rendering and Editor
    1 people · 8 points · first shared 2020 · discussion on HN

What HN people wrote when they linked it

_gabe_ · 2022-04-29
You can allocate 4GB of virtual memory which will ensure that it doesn't get allocated until you actually hit a new page. Heck, you can, and OurMachinery has a great blog post on this, allocate 100GB of virtual memory and then use pointers as immutable ids and your app will only use as much physical memory as needed and the OS will take care of the rest. https://ourmachinery.com/post/virtual-memory-tricks/
stephc_int13 · 2020-04-07
If I read correctly, this is trunk-based development. https://trunkbaseddevelopment.com/ And this is also my experience, I absolutely hate spending time to merge things and resolve the conflicts and bugs. I think this should be the default behavior for small/medium teams. Branching should only be used when trunk-based dev is no longer possible. I really liked this article from the Our Machinery guys, who created the Bitsquid engine. https://ourmachinery.com/post/moving-away-from-git-flow/ This other article is also interesting: https://medium.com/@mattia.battiston/why-i-love-trunk-based-developmen…
warpech · 2020-03-03
Interesting what you say about struct-of-arrays, I have been following this topic closely recently. Do you know any well known JS code implemented using struct-of-arrays or have some interesting resources about it? I am worried that SoA codebase is difficult to maintain and hard to express in a simple API. I have been reading two resources about it, https://ourmachinery.com/post/data-structures-part-1-bulk-data/ and https://stackoverflow.com/questions/39799874/why-does-javascript-proce…
metaobserver · 2019-12-01
I recommend the new "Our Machinery" blog [1], where they write about a new engine development. Bitsquid was sold to Autodesk, rebranded Stingray and as of now seems to be discontinued [2]. [1] https://ourmachinery.com/post/ [2] https://www.autodesk.com/products/stingray/overview
tomcam · 2019-02-19
Very lengthy and seemingly pretty good, but I wanted to see it applied. So... * The home page at https://ourmachinery.com just says "We are building something..." * The About Us passage on the home page just says "We are game engine developers with a passion for diversity, openness and knowledge sharing etc." without saying what they do, then points you to Instagram, which shows a super diverse team of three adults and one child, but doesn't give a clue about their project(s?) * The blog https://ourmachinery.com/post/whats-happening-this-year/ talks about transparency but I still don't know what they do * There's no GitHub or similar link
meheleventyone · 2017-10-02
No they left Autodesk and are running a company called Our Machinery. http://ourmachinery.com
scott_siskind · 2022-08-02
Anyone got a mirror of a release zip (such as https://ourmachinery.com/releases/2022.5/the-machinery-2022.5.a-linux.… ) ?
jwitthuhn · 2022-08-01
This looks pretty shady. The current EULA on the website includes a bit that says they can terminate your license and ask you to delete all source and binaries entirely at their discretion[1]. The latest copy on the wayback machine from May does not have that bit.[2] 1. https://ourmachinery.com/eula.html 2. https://web.archive.org/web/20220529230958/https://ourmachinery.com/eu… So they used the 'we can update the eula at any time at our discretion' clause to add a 'we can tell you to delete your source and binaries' clause and then immediately invoked it.
lasagnaphil · 2021-04-08
A much more simple alternative way of doing this is to use stretchy buffers. Here's an example of a dynamic array in C in about 20 lines: http://nothings.org/stb/stretchy_buffer.txt And here's a friendly explanation of how this technique works: https://ourmachinery.com/post/minimalist-container-library-in-c-part-1…
flohofwoe · 2020-10-10
Headers not including headers is still good advice, it's not so much about fast compiles (at first at least while a project is small), but about not letting header inclusions grow out of control (see almost every C++ project with more than a few hundred source files, it's almost impossible to clean up unused headers, and even when that happens - after a few weeks it's back to the old mess). See here for a relatively recent take on this: https://ourmachinery.com/post/physical-design/
mistrial9 · 2019-12-11
the layout and typesetting on this looks good in Firefox 70! view-source:https://ourmachinery.com/files/guidebook.md.html <meta charset="utf-8" emacsmode="-- markdown --">
daemin · 2019-08-21
Not necessarily a fan of this sort of re-blogging so here's the original link: https://ourmachinery.com/post/data-structures-part-1-bulk-data/
desdiv · 2019-02-19
I found the name Niklas Gray from one of their previous HN submissions[0]. Googling the name turned up a Github account[1] and a blog[2], but nothing hinting at what they do, except that it's game related. [0] https://ourmachinery.com/post/physical-design [1] https://github.com/niklasfrykholm [2] https://www.gamasutra.com/blogs/author/NiklasGray/1016727/

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close