gifloopcoder icon indicating copy to clipboard operation
gifloopcoder copied to clipboard

strokeStyle color of Cube incorrectly rendered in GIF (but OK in preview)

Open phivk opened this issue 7 years ago • 0 comments

I'm trying to create a Xmas tree out of 5 green 'tree' cubes and one yellow (#F8E71C) 'treetopper' cube:

function onGLC(glc) {
    glc.loop();
    glc.size(500, 500);
    glc.setDuration(2);
    glc.setFPS(20);
    
    glc.setMode("single");
    glc.setEasing(false);
    var list = glc.renderList,
        width = glc.w,
        height = glc.h;
    
    glc.styles.backgroundColor = "#000";
    
    var color_green  = "#00FF00";
    var color_yellow = "#F8E71C";
    
    var size = 30;
    var n = 6;
    
    // yellow treetopper
    list.addCube({
        translationX: (width / 2),
        translationY: 0.75 * size,
        x: 0,
        y: 0,
        size: 0.75 * size,
        rotationX: [0, 90],
        rotationY: [0, -90],
        rotationZ: [90, 0],
        scaleX: 1,
        scaleY: 1,
        strokeStyle: color_yellow,
        fillStyle: color_yellow,
    });

    // green tree
    for (var i of [...Array(n).keys()]) {
        list.addCube({
            translationX: (width / 2),
            translationY: 30 + (i*i) * size * 0.4,
            x: 0,
            y: 0,
            size: (i*i) * size * 0.24,
            rotationY: [0, -90],
            scaleX: 1,
            scaleY: 1,
            strokeStyle: color_green
        });
    }
}

The yellow cube renders correctly in preview, still, sprite sheet & image sequence, but incorrectly when I click "MAKE GIF" (see the top rotating cube in white):

merry_xmas_2018_cubetree-2

I've tried specifying a yellow color in several ways, all causing the same rendering issue:

  • "#F8E71C"
  • "yellow"
  • glc.color.rgb(r, g, b)

possibly related to #18 ?

phivk avatar Dec 24 '18 19:12 phivk