Skip to content

Instantly share code, notes, and snippets.

View rotoglup's full-sized avatar

Nicolas Lelong rotoglup

View GitHub Profile
rotoglup /
Created July 19, 2011 18:34
python_assert_debug_logging - benchmark, using python assert to discard function calls and arguments evaluation
import contextlib
import time
def time_print(prefix):
t0 = time.time()
t1 = time.time()
print "'%s' time: %fmsec" % (prefix, (t1-t0)*1000)
rotoglup /
Created February 14, 2012 16:52
svn-import python script meant as a replacement for (from - changed to prevent window popups on windows + performance optimisation for 'add' phase
#!/usr/bin/env python
# -*-mode: python; coding: utf-8 -*-
# svn-import - Import a new release, such as a vendor drop.
# The "Vendor branches" chapter of "Version Control with Subversion"
# describes how to do a new vendor drop with:
# >The goal here is to make our current directory contain only the
# >libcomplex 1.1 code, and to ensure that all that code is under version
rotoglup / gist:2470162
Created April 23, 2012 10:43
View gist:2470162
#!/usr/bin/env python
# Copyright (C) 2006 Martin Blais <blais at furius dot ca>
# 2008-02: Improvements by "Giovanni Bajo" <rasky at develer dot com>
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
rotoglup / stb_image.c
Created May 23, 2012 11:04
Modified version of stb_image 1.33 to resolve a typedef conflict for 'uint' with Android NDK (r7b) (removed uint from stb_image)
View stb_image.c
/* stbi-1.33 - public domain JPEG/PNG reader -
when you control the images you're loading
no warranty implied; use at your own risk
NOTE this is a modified version : removed 'uint' typedef as it conflicted with <sys/types.h> on Android NDK r7b
and was not of much use anyway
Primarily of interest to game developers and other people who can
View rtgu_ktx.h
* rtgu_ktx.h - Version -1 WIP untested
* No endianness swap support
int ktx_load(ktx_image* i, ktx__context* k);
// TODO(nico) public typedefs
rotoglup / 201909 - a look into threejs
Last active February 10, 2022 10:26
201909 - A look into threejs editor app
View 201909 - a look into threejs

A look into threejs editor

My notes while reading the source code from threejs Editor app, as I've been curious about :

  • the editor architecture
  • the undo/redo system
  • the camera control behaviour & code
  • the object transform gizmos behaviours & code
rotoglup / 201909 - a look into threejs
Last active December 2, 2022 11:55
201909 - a look into threejs raycaster
View 201909 - a look into threejs

A look into threejs raycaster

I've been looking at the current master source code, not a specific version : github commit b3ce68b4 on sept. 2019.

The source code is located in src/core/Raycaster.js, and the doc is online.

A Raycaster instance is constructed given a ray (origin point + direction vector) and a range on this ray (near, far distances), and offers the following API :

  • intersectObject( object, recursive, optionalTarget ) : Array
rotoglup / graphics-companies.geojson
Last active December 6, 2019 11:01
A map of companies developping graphics software, in Europe
View graphics-companies.geojson
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
rotoglup / Blender scripting
Last active September 26, 2022 10:19
Some Blender 2.80+ scripting notes
View Blender scripting

Scene, view, collections, etc.

Create a new collection

collection =
if collection is None:
    collection =
View 202003 - a look into threejs API
Once more, I'm struggling to wrap my head around the threejs API, here are my notes.
> **IMPORTANT** base on threejs `r114` (march 2020)
API topics covered :
* Scene and Object3D, hierarchy, transforms
* Maths, linear algebra
* DirectionalLight, as I'm currently trying to understand how to attach one of them to a Camera...