Skip to content

Instantly share code, notes, and snippets.

Avatar

Nicolas Lelong rotoglup

View GitHub Profile
@rotoglup
rotoglup / python_assert_debug_logging.py
Created Jul 19, 2011
python_assert_debug_logging - benchmark, using python assert to discard function calls and arguments evaluation
View python_assert_debug_logging.py
import contextlib
import time
@contextlib.contextmanager
def time_print(prefix):
t0 = time.time()
yield
t1 = time.time()
print "'%s' time: %fmsec" % (prefix, (t1-t0)*1000)
@rotoglup
rotoglup / svn-import.py
Created Feb 14, 2012
svn-import python script meant as a replacement for svn_load_dirs.pl (from http://svn.haxx.se/users/archive-2006-10/0857.shtml) - changed to prevent window popups on windows + performance optimisation for 'add' phase
View svn-import.py
#!/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
View gist:2470162
#!/usr/bin/env python
#
# https://gist.github.com/2470162
#
# 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
rotoglup / stb_image.c
Created May 23, 2012
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 - http://nothings.org/stb_image.c
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
https://gist.github.com/2774576
QUICK NOTES:
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
rotoglup / 201909 - a look into threejs editor.md
Last active May 19, 2020
201909 - A look into threejs editor app
View 201909 - a look into threejs editor.md

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
rotoglup / 201909 - a look into threejs raycaster.md
Last active Apr 21, 2020
201909 - a look into threejs raycaster
View 201909 - a look into threejs raycaster.md

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
rotoglup / graphics-companies.geojson
Last active Dec 6, 2019
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
rotoglup / Blender scripting notes.md
Last active Sep 16, 2020
Some Blender 2.80 scripting notes
View Blender scripting notes.md

Cycles

I had crashes while scripting the CUDA devices selection (b3d v2.83 + 4x GTX 2080 GPU).

The original code was :

preferences = bpy.context.preferences
cycles_preferences = preferences.addons["cycles"].preferences
cuda_devices, opencl_devices = cycles_preferences.get_devices()
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...
You can’t perform that action at this time.