Not A Livejournal
 
[Most Recent Entries] [Calendar View] [Friends]

Below are the 20 most recent journal entries recorded in 偉民's LiveJournal:

    [ << Previous 20 ]
    Saturday, December 28th, 2013
    3:30 am
    Guys, I still care.
    But wow is my userinfo and icon out-of-date! It's been so long. I aged. I've been surgically, cosmetically altered. I gained and lost henges of stone. In and out of love. Cycled from pale to tan and back. And for what? For fun, mostly. I did it all for the fun.

    Well, it's probably going to be a while before the ride is over, so what's next?

    READ(4) , WRITE

    Tuesday, April 23rd, 2013
    7:31 pm

    I love this community! That nobody posts in. Except me.

    Posted via LiveJournal app for iPhone.

    READ(8) , WRITE

    Friday, July 13th, 2012
    9:36 am
    Approximately 3,000 degrees Fahrenheit
    I didn't think welding would be so funny. Maybe it's only funny to me. There are 8 people in my class, and we were all standing around with oxyacetylene torches on Monday, learning how to ignite them. The first step is to turn on the acetylene and light it. Acetylene, when burning slowly, lets off little floating balls of carbon, dark black, which are buoyed by the heat. We had the room ventilators switched off so that we could hear the instructions, so these little balls accumulated in the spacious volume of the welding shop, until it was absolutely filled with little floating black dots. It was like a demo effect. I could not stop grinning at it.

    On top of that, we're all supposed to be wearing long sleeved natural fibers, to protect our arms from high temperature sparks and burns from the UV rays that arc welding emits. Everyone else was in light summery colors. Of course, I'm wearing a black turtleneck. (I have years of experience wearing this kind of thing in Hawaiian weather.) Eventually all those little black dots start coming back down and landing on absolutely everything. They're carbon, so they smudge into little grey smears all over everyone's clothing. We all look filthy! Except me, because I'm wearing black. Ha ha!

    My first project is a little cube. I have already cut out all its faces on the powerful but somewhat imprecise hydraulic shear in the metal shop. Its geometry is going to be... a little wonky. Arty, I'll say.

    WRITE

    Thursday, August 25th, 2011
    12:27 am
    I see a few posts drawing a contrast between the facebook name policy and the Google+ one. I guess they don't seem that different to me, since my facebook account was banned in mid-2007 for not using my real (probably "real to the government") name. It's still banned.

    7/12/2007 3:37 PM:

    Hi,

    Fake names are a violation of our Terms of Use. Facebook requires users
    to provide their full first and last names (i.e. no initials).
    Impersonating anyone or anything is prohibited. Nicknames are only
    permitted if they are a variation of your first or last name. Also,
    nicknames cannot be used in replacement of your first or last name. The
    accepted format is as follows: FirstName 'Nickname' LastName.

    If you would like to use this profile again, just get back to us with
    your real name and we will reactivate the account for you.

    Thanks for your understanding,

    Chad
    Customer Support Representative
    Facebook

    WRITE

    Wednesday, August 24th, 2011
    3:12 am

    Since I am only thinking about coding (and travel arrangements) on the run-up to a demo event, I always forget that I'm about to spend time with some of the best people ever. Afterwards, I try to make a note about that... note to self: demoparties have best people ever.

    I ran out of time and did not enter the compo at Evoke. One reason is: I developed on ATI hardware this time, and I have some kind of weird nvidia bug I can't figure out. It doesn't seem like I'm doing anything wrong... though I have been at fault for the overwhelming majority of bugs so far.

    The bug is this: I have a fragment shader which is used to displace screen pixels. The screen pixels are read from a 2D texture, the displacement direction and amount is read from a 3D texture (and is animated by changing the depth coordinate in that texture). The part in question is like this:

    #version 330 core
    // FS_Break.frag
    uniform sampler2D tx1; // a screen sized texture which is a capture of the screen color buffer
    uniform sampler3D tx2; // a 3D texture containing displacement data
    uniform float tx2z;    // how deep in the 3D texture to read from
    uniform float amount;  // severity of effect. 0.0 = no effect.
    
    layout(location = 0, index = 0) out vec4 Color;
    
    in vec2 ouv1; // interpolated texture coordinate 
    
    void main() {
        Color=texture(tx1,ouv1 + vec2(amount * texture(tx2, vec3(ouv1, tx2z)).rg - vec2(0.5,0.5) ) );
    }
    
    Works as expected on ATI. On my nvidia machine, it results in an empty screen. Messing around with it shows some very weird properties:
    // correctly displays the screen sample
    Color= texture(tx1, ouv1);
    
    // correctly displays the attenuated displacement texture
    Color = amount * texture(tx2, vec3(ouv1, tx2z));
    
    
    // this is used in some more variations below..
    vec4 nvbug = texture(tx2, vec3(ouv1, tx2z));
    
    ...
    
    // blank screen.
    Color= texture(tx1, ouv1 + amount * nvbug.rg * 0.0000000001);
    
    // not blank.
    Color= texture(tx1, ouv1 + amount * nvbug.rg * 0.000000000);
    
    
    // this is the best one:
    // replace either branch with Color = vec4(1.0,1.0,1.0,1.0) and it works as written
    // but if both texture values are used, even if never combined or used at the same time, blank!!!
    if(amount > 0.4) {
    	Color= texture(tx1, ouv1);
    //	Color = vec4(1.0,1.0,1.0,1.0);
    } else {
    	Color = nvbug;
    //	Color = vec4(1.0,1.0,1.0,1.0);
    }
    

    So... that's driving me nuts. I thought maybe my textures were two different formats and that ATI was doing some pixel format conversion that NV wasn't, but that seems unlikely. Clearly the driver is optimizing out one or the other texture reference when it computes that it is unused. But what's wrong?? I guess I will go over my texture parameters one at a time tomorrow.

    READ(3) , WRITE

    Sunday, August 7th, 2011
    3:54 pm
    We are closing in on Evoke. Or, as I like to call it, "Next up: 64K PC Intro".

    I don't think I've discussed much what I have learned from participating in demo compos, but it's different then what you might think. The technological hurdles are considerable, but they are largely discretionary. You get as much challenge as you sign up for.

    The part that this exercises most, for me, is the ability to confront fear. The coding pressure as we finish out the last week of development before the compo is intense, but during this time I must focus, think, and complete the code. Looming over me at all times is fear. Fear of failure, of ridicule, but mostly of my own mediocrity. It is this spectre that I confront when competing in the demoscene. I don't know what to make, but I have to make it. I don't have any artistic taste, but I must make aesthetic choices. When there are other competitors, they are often the best in the world. Can I still operate in the face of certain failure?

    Well, that's what I'm practicing doing. They say that willpower follows a strength model (Baumeister, R. F. Vohs, K. D. Tice, D. M. 2007). The way to build it up is to exercise it.

    This has been my ten minute break, back to code.

    WRITE

    Monday, April 18th, 2011
    12:42 am
    I spent the whole day writing graphics code and all I have to show for it is this teapot.
    Which has holes in it all over the place.


    It is a little big, huh? Well I spent all day on it. Enjoy my stupid utah teapot.

    READ(2) , WRITE

    Sunday, April 3rd, 2011
    11:47 pm
    I'm not an efficiency expert or anything but... I'm having some doubts that this internet thing is increasing our productivity at all!

    Well, check for updates tomorrow! And every hour after that!

    READ(1) , WRITE

    Tuesday, February 22nd, 2011
    9:29 pm
    "Do you have time to talk to me?"
    "Actually I'm a little bit of a hurry. I don't. Sorry."
    "What's your favorite candy?"
    "I don't know. Kit kat?"
    "Let's say you have 1440 kit kats."
    "Okay."
    "Would you give me 5?"
    "Of course."
    "Well you have 1440 minutes in your day, and I'm just asking for 5."
    ...
    "This was a very special kit kat. Bye."

    Thanks, clipboard holding volunteer, for the fallacious logic.
    If you had 1440 kit kats, and 480 of those disappear while you sleep, and 480 of them are taken by work, and the remaining 480 kit kats must be allocated to everything else in your life that is worth a kit kat, and once they are gone, you can never get any more kit kats... would you give some incoherent stranger with an agenda 5 of them?

    READ(7) , WRITE

    Sunday, February 20th, 2011
    6:37 am
    Ok, demoscene talk given! I'll post a video when I get one (They recorded it. We'll see if they decide to splice in my slides or what. I'll do it, if not.) It went smoothly, though the speakers they dug up for me were of the humorously tiny variety that usually go with computers. The Q+A went on for a little longer than expected, half an hour.

    One interesting thing the designers came up with was an idea for a "steampunk demo" (though they did not use those words), wherein video effects were created with a mechanical TV for the rasterizing and display device. Yes, I learned about a new thing: "Nipkow disk."

    Located two lurking scene enthusiasts, contact infos exchanged.

    Now I can stop stressing about talking and concentrate once more on the production for Evoke.

    READ(2) , WRITE

    Sunday, January 30th, 2011
    11:10 pm
    I'm going to give a little talk about demos and the demoscene a couple weeks from Thursday. I just finished assembling a highlight reel for it. I'm a little anxious. Eek.

    READ(2) , WRITE

    Monday, January 17th, 2011
    1:17 pm
    I needed a more complicated mesh than I knew how to make in Wings. I decided to learn how to use Blender (inspired by Zagupi/HBC's HBC-00008: How to use Blender).

    Blender's UI is not exactly intuitive. You definitely need to watch a tutorial video in order to get started. The effective workflow is centered around keyboard use. Reading the docs is super boring, so I watched the very first tutorial to find out what the main mouse and UI structure were, then switched to a tutorial about making something, and followed along haltingly, pausing whenever I needed to find a function. I later discovered the tutorial was post-2.5 and I was using the "stable" 2.49, right before a major UI overhaul. Oh well, I learned a lot by looking around for those nonexistent functions.

    Also, it's nice to see someone else's logical structure imposed on 3D rendering. It helps mentally cluster the kinds of things that wind up being done in textures vs. what winds up as a post-process effect, or a lighting effect, especially you can push a lot of stuff from one to the other if you're trying to do something specific.

    Blender is an open source product, but it is much much nicer and more stable than the open source things I'm accustomed to. It's as if it were a commercial product that had been worked on for years by dedicated professionals and then was open sourced when funding ran out, but the original lead continues to work on it. (Ha ha, yes, I already found out that was indeed the case.)

    READ(1) , WRITE

    Thursday, January 6th, 2011
    7:52 am
    Fixed my blue oval problem. Wasn't a bug in my new effect, was a bug in the rest of the scene. Doops. Crap, times up.

    READ(3) , WRITE

    Wednesday, January 5th, 2011
    7:33 am
    More demo code! A new effect: Today it just fills my screen with a big blue oval, because of a bug. What's the bug? If I knew that, my screen wouldn't have an oval on it.

    Graphics bugs are funny, sight gags by definition. You spend an hour or so typing what looks like organized functions, finally run it and then... huge oval.

    Ok, time to get ready to go to work.

    Current Mood: 8

    READ(2) , WRITE

    Tuesday, January 4th, 2011
    5:36 am
    Made it so my glow isn't squished into the aspect of the display. Derp.
    Fixed duplicates of resolutions in the resolution selector.
    Made some new effect code, refactored it, refactored it again. Felt kind of good about it.
    Realized that coder colors look like someone barfed a box of crayons all over the screen. Worked on a nicer palette.

    I'm on a browsing diet for January, so I can't stay long. I'm logging all my internet usage.. it's mostly for looking things up, though I'm using books and telephone calls where possible.

    I feel like there was something else I wanted to write up here. Oh well, time's up.

    WRITE

    Friday, December 31st, 2010
    3:11 am
    VS projects open while democoding:

    1) Last year's 64k demo
    2) Current 64k project
    3) A 1k project (Wow... not a whole lot fits in there)
    4) Auld's OpenGL 1k src
    5) IQ's project with frameworks for every kind of small production
    6) Martti's demo from last Evoke

    I don't copy code wholesale, and it's not very portable anyway. I just want to know how different people have solved the problems I'm looking at. Some of this stuff is only documented by code that people have written.

    Also, after I started learning Scala, my code sprouted loop-running functions that take function pointer parameters. It's all like,

    void forEachDevice( void(* pFunc)(void *, PDISPLAY_DEVICE), void *pFuncArg )

    Which looks insane and retarded. But at least I didn't have to write that device enumeration loop twice with different stuff in the middle! Okay okay I'll rewrite it as objects. sheesh

    Added:
    #ifdef INSANE_AND_RETARDED

    READ(7) , WRITE

    Wednesday, December 29th, 2010
    11:13 pm
    I feel extra-productive on my newly-reinstalled Windows machine.

    Partially because on a new install (of pretty much any OS) there isn't any automated BS going on in the background or while loading file context menus, wasting time. Everything responds quickly.

    Partially because I didn't install Flash, so I can't watch youtube videos or play flash games. (Or shop on the Native Instruments website, but I probably shouldn't be there anyway.)

    WRITE

    1:14 am
    Hooked up all my music softwares again, wrote a v2 song, hooked it up to 64k democode frame, everything works in Win7.. I think. Though I don't really have a 64 bit exe compressor.

    Does it work in any other windows? I dunno!!

    Oh, and then my computer pulled an Inigo Montoya on me:

    "I admit it. This code is too much for me."

    "Then why are you smiling?"

    "Because I know something that you do not know."

    "And what is that?"

    "I am running in software-rendered mode."
    (switches to hardware accelerated mode) *foosh*
    :O

    READ(2) , WRITE

    Tuesday, December 28th, 2010
    1:34 am
    ...just like eeeevery dev cycle
    starts with reinstalling every single one of your blasted development tools,

    every rose has its thorns.

    No, honestly I got through years and years of network service development and I only ever had to install my development tools every 2 years or so! But this Windows development stuff... well... it occurs on Windows machines. And I'm just no good at keeping them bootable, long term.

    So that's what I spent today doing. First, attempting to repair a Windows 7 install that got a rotating selection of blue screens on boot, ranging from the driver-hating "IRQL_LESS_THAN_OR_EQUAL.." to the quickly-disappearing "driver is mismanaging system PTEs". With some plain old no-message ones in there for good measure.

    This time I'm blaming Apple and their windows bluetooth drivers, partially because the bluescreens persisted after reinstall/PRAM-zap, but went away when I removed the bootcamp utility which enables, among other things, the bluetooth radio. Booting the partition from VMWare worked fine.

    Anyway, I'm back in business, I guess. I would get a separate computer that is only for windows development if I didn't hate computers so much right now.

    WRITE

    Saturday, December 25th, 2010
    6:58 pm

    WRITE

[ << Previous 20 ]
Entertain. Yourself.   About LiveJournal.com