V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lamada
V2EX  ›  程序员

做编辑器真是男

  •  
  •   lamada · 2020-11-02 14:02:17 +08:00 · 1385 次点击
    这是一个创建于 1279 天前的主题,其中的信息可能已经有所发展或是发生改变。
    前端,目前对着 unity 的模式在撸一个基于 pixijs 的 web 2d 游戏编辑器,做着挺有意思,就是有点头秃。
    另外想问一下,有什么画网格线比较好的方法?还要适应缩放和平移。感觉上应该不是创建一些 sprite 或者用 canvas 2d api 画出来的,更像是用 shader 的方式传入缩放和位移的参数画出来的。
    2 条回复    2020-11-05 17:50:37 +08:00
    lamada
        1
    lamada  
    OP
       2020-11-05 17:49:21 +08:00
    precision mediump float;
    varying vec2 vTextureCoord;
    uniform sampler2D uSampler;

    void main() {
    float screen_w = 100.0;
    float screen_h = 100.0;
    float rest_x = mod(gl_FragCoord.x + 1.0, screen_w);
    float rest_y = mod(gl_FragCoord.y + 10.0, screen_h);
    vec4 color = texture2D(uSampler, vTextureCoord);
    bool line = (rest_x <= 0.5) || (rest_y <= 0.5);
    // float alpha = line ? 0.1 : 0.0;
    if (line) {
    color.x = (color.x + 0.1) / 2.0;
    color.y = (color.y + 0.1) / 2.0;
    color.z = (color.z + 0.1) / 2.0;
    }
    gl_FragColor = vec4(color.xyz, color.a);
    }
    lamada
        2
    lamada  
    OP
       2020-11-05 17:50:37 +08:00
    试着写了一个 demo 还行,给有同样问题的人参考参考
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2403 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 08:06 · PVG 16:06 · LAX 01:06 · JFK 04:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.