archive-ca.com » CA » E » EVANJONES.CA

Total: 397

Choose link from "Titles, links and description words view":

Or switch to "Titles and links view".
  • Raytracer: Cubes (evanjones.ca)
    Raytracer Cubes about archive 2003 November 24 12 25 Cubes And I got the field of view calculation correct so the scene position changed a little

    Original URL path: http://www.evanjones.ca/raytracer-0003.html (2016-04-30)
    Open archived version from archive


  • Raytracer: Phong Shading (evanjones.ca)
    Raytracer Phong Shading about archive 2003 November 24 12 25 I implemented Phong shading and the Blinn Phong illumination model These spheres now look nice and round

    Original URL path: http://www.evanjones.ca/raytracer-0002.html (2016-04-30)
    Open archived version from archive

  • Raytracer: Adaptive Anti-aliasing (evanjones.ca)
    corners of each pixel then averaging the colour values If the total error of the four points is above a certain threshold the routinely recursively divides the pixel into four areas and repeats the procedure This allows areas which need more detail to get it without slowing down the entire render For example with no antialiasing 10 000 rays were used The level 4 example here used 24 121 rays

    Original URL path: http://www.evanjones.ca/raytracer-0001.html (2016-04-30)
    Open archived version from archive



  • Raytracer: First Iteration (evanjones.ca)
    24 12 25 This version of the raytracer shows off some beautiful spheres positioned correctly and shaded using my high tech flat shader which shades the entire object the same colour Needless to say this is just an early version

    Original URL path: http://www.evanjones.ca/raytracer-0000.html (2016-04-30)
    Open archived version from archive

  • 0wnz0red (evanjones.ca)
    2003 November 24 12 25 Wow I just read 0wnz0red by Cory Doctorow Good sci fi and available for free on Salon but I m disconnected now so I can

    Original URL path: http://www.evanjones.ca/ownz0red.html (2016-04-30)
    Open archived version from archive

  • Ubiquitous Home Entertainment Port (evanjones.ca)
    would be the ubiquitous port across all of their home entertainment and computing devices In effect FireWire would be the multimedia networking backbone for the next generation home entertainment center In other contexts it looks like TCP IP based networking is filling the promised role of 1394 Of course This reminds me about an article about Rendezvous I read that mentioned how the designed thought that eventually everything would talk

    Original URL path: http://www.evanjones.ca/home-tcpip.html (2016-04-30)
    Open archived version from archive

  • Lessons from Dynamic Languages: Lookup Tables (evanjones.ca)
    certain function instead of using some big switch or if statement As an example I ve recently written a Python script which generates some C code for displaying some text and graphics onscreen using OpenGL This script parses an XML description of the graphics and text then outputs a function with the appropriate C calls One way of handling the parsing is to use a big if else statement like this if node nodeName text Do stuff elif node nodeName img Do other stuff else Raise exception Instead of doing that I ve chosen to create a dispatchTable dictionary which maps node names onto functions Now my code looks like this dispatchTable text handleText img handleImg if dispatchTable has key node nodeName Call the function dispatchTable node nodeName node else Raise exception I think this is clearer and more readable I also like that you can just add additional items to the data structure and it all just works As a result I ve started using this practice in my C projects Since I can t easily map any type to any other type I ve been using arrays The challenge is to find a simple and understandable mapping from your key type to an array index As an example I just wrote some code to rotate points 90 degrees on a 3x3 grid with the centre defined as 0 0 and the edges defined as 1 1 It looks like this const uint8 t rotationsX 1 1 1 0 1 0 1 1 1 1 0 1 0 0 0 1 0 1 1 1 1 0 1 0 1 1 1 Maps index new Y value const uint8 t rotationsY 1 1 1 1 1 0 1 1 1 0 0 1 0 0 0 0 0 1

    Original URL path: http://www.evanjones.ca/dynamiclangs-lessons.html (2016-04-30)
    Open archived version from archive

  • Towards a New Paradigm for C++ Program Development (evanjones.ca)
    be recompiled This is mostly because C implements low overhead objects and each file must see the entire definition However I think a workaround is possible What if instead of including the header file you imported the type When you import a type the compiler would automatically create a pimpl or a compiler firewall proxy object This object contains a pointer to the object creates it in the constructor and

    Original URL path: http://www.evanjones.ca/cpp-changes.html (2016-04-30)
    Open archived version from archive