June 2023 Newsletter

Hey all 👋 This month we’re doing things differently and want to show off more from the Odin Discord Community. We’ll go over release note highlights and official package news as usual.

Release note highlights

Highlights from May

  • New compiler flag -max-error-count:<integer>
  • Prevent trivial copying with struct #no_copy
  • Experimental @(deferred_*_by_ptr=<proc>) attribute
  • Make !x be an untyped boolean

Highlights from June

  • Allowing for Positional and Named Arguments in Procedure Calls details
  • New and Improved io.Stream interface details
  • bindFramebuffer was added to webgl
  • Added self_cleanup flag to properly auto-clean threads

Package / Bindings News

  • Bindings for lua were added with several versions: vendor:lua/ + 5.1, 5.2, 5.3 and 5.4
  • Improvements to the JSON tokenizer
  • Partially buffer all fmt.fprint* related calls using a bufio.Writer
  • Font texture atlas builder port of fontstash was added to vendor:fontstash
  • Vectorized rendering port of nanovg was added to vendor:nanovg
  • Nanovg backends for OpenGL 2.0, OpenGL ES 2.0, OpenGL 3.2 core profile and OpenGL ES 3 were added to vendor:nanovg/gl

New Bindings / Packages

Primeagen Interview with GingerBill

GingerBill was recently interviewed by ThePrimeagen (~51 min.). It included a walkthrough through the demo.odin file, going over odin’s features and answering viewer questions.

Play ## Package Registry `mjölnir` has released an alpha build of their [Odin Package Registry](https://pkg-odin.org/). Play

Portable Build Tools

ftphikari has released their PortableBuildTools, a “Portable, simple and fast installer for Visual Studio build tools.”

Streams / Youtube Content

Karl Zylinski has been streaming solo gamedev using Odin, Raylib & Aseprite.

Mjölnir has recently been uploading videos on Pico (a tiny text editor) and basic data structure implementations / explanations.

Showcase

Showcase from May

Play Play

Arcade physics kart racer - CasualKyle

Play Play

Game Framework - The Lua Whisperer

Little Vampires Clone - BigYosh

Cat Game Progress - karl_zylinski

Showcase from June

Polishing UI / Scenes - Falconerd

Cascaded Shadow Mapping - Francis_the_cat

Basic Raytracer - bgthompson

Adding workspace symbols to OLS (Odin Language Server) - Draoz

one more QOL feature in 🥳 - brda

I managed to implement my favourite way of disconnecting nodes - brda

Spall tracing the cpython interpreter for over a minute - cloin

Raw File Viewer - markersniffen

HSV Color Space - ReasonableCoder

Explosives - Francis_the_cat

Disentangle - Matt_

WIP roguelite platformer gameplay - jakubtomsu (Jacob)

2d game library running on windows&web with hot reloading - Rehkitz

View your programs structure with ease - Matt_

Multi-line text editing for custom UI - markersniffen

Sparse fluid solver working in odin + dx12 - ProfPistachio