Regexl: A High Level Language For Regex

In ‘Thought 2: Regex is Like Assembly’ I wondered why we are still doing regex in this kind of hard to understand, symbolic way, when we have already invented high level programming languages. There is no reason regex can’t be written as clearly as any other programming language we use today. I thought doing this would be an interesting project, and so I came up with Regexl, a high level language for writing regex, that can be used as a simple library....

March 5, 2024 · 4 min

Thought 2: Regex is Like Assembly

‘Thoughts’ are a place for me to write down random ideas that I think are interesting. They might be of any length, discuss any topic, and will probably not be formal, scientific, or rigorous in presentation. They are also, in some sense, a way for me to connect with interesting people, so if something here piques your interest or you have some comments to make, please do reach out! (omar at bloeys dot com)...

February 29, 2024 · 2 min

Thought 1: On Infinite Libraries

‘Thoughts’ are a place for me to write down random ideas that I think are interesting. They might be of any length, discuss any topic, and will probably not be formal, scientific, or rigorous in presentation. They are also, in some sense, a way for me to connect with interesting people, so if something here piques your interest or you have some comments to make, please do reach out! (omar at bloeys dot com)...

November 29, 2023 · 6 min

A Practical Guide To Editor Scripting in Unity - Part 4: Handles

In Part 3 we setup the basis of our simple path/waypoint system, however we still can’t use it easily because the gizmos we used are just simple graphics, so in this post we will create interactive tools in the scene view that we can use to control objects, which we will do using Handles. According to the Unity Docs: “Handles are the 3D controls that Unity uses to manipulate items in the scene view....

March 6, 2022 · 5 min

A Practical Guide To Editor Scripting in Unity - Part 3: Gizmos

After talking about inspector attributes in part 2, it is time to switch our focus to the scene view. Most of editor scripting in Unity is changing and dealing with the editor by adding buttons, making UI changes or creating new windows, however, there is a small part of the editor API that allows you to work with the scene view, and those are Gizmos. Gizmos are all these little UI elements and graphics present all over the scene view, all the different icons on objects, like the sun and camera icons, the outline around selected objects and the collider outline are all in reality gizmos....

March 1, 2022 · 4 min

A Practical Guide To Editor Scripting in Unity - Part 2: Attributes

When you are first starting out with editor scripting in Unity, the best thing to starting playing with is the inspector. Being one of the things we interact with the most as Unity developers, it is quite beneficial to be able to change it and generally control it. Lucky for us it is the simplest part of the editor to extend and edit, so even if you are not keen about going very far with coding the editor in Unity, you should at least acquaint yourself with the inspector part of it....

February 22, 2022 · 6 min

A Practical Guide To Editor Scripting in Unity - Part 1: Introduction

Game development is a lengthy and highly complicated process that can take months of a developers life for even a small project, therefore any thing that helps improve the workflow and speedup the process is very welcome. Now while modern game engines try to cater to the needs of developers and make their lives easier, there is always space for improvement, especially given the specific needs of each project. Luckily for users of the Unity3D game engine, there exists an easy to use and powerful editor API that allows the creation of basically anything you want in regards to working with the Unity editor UI, be it simple extensions or full-blown editor windows and custom tools that interact with your game....

February 22, 2022 · 3 min

Poor Man's Code Generation

After fixing the performance problems of the Visual Item Database, I decided to start dealing with a very annoying problem that has haunted me was for as long as ‘Categories’ have existed, which is the fact that in order to add or remove a category from the database you have to jump into code and add things in a relatively large number of places, which is something you don’t want to have for a tool that is supposed to be used by designers a lot, and when you factor in the fact that this process will probably be done more than once, you never really want to have it....

June 22, 2016 · 7 min

Performance Critical Editor Tools and Serialized Objects

Of all the awesome features in Unity, I find the ability to script the editor and make it do what you want using almost the same tools and API that the original developers used to make it one of the best features available to developers using Unity. Almost anything you can think of has been done using editor programming, from simple tools to complete editor overhauls, and I too have got my hands dirty with it....

March 30, 2016 · 6 min