V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
CSGO
V2EX  ›  前端开发

谁知道这种画面网页代码怎么创出出来的?

  •  
  •   CSGO ·
    wyfang · 2022-05-16 11:31:23 +08:00 · 3863 次点击
    这是一个创建于 930 天前的主题,其中的信息可能已经有所发展或是发生改变。
    https://codepen.io/KilledByAPixel/pen/QWQyMbY

    它实际就一行代码:

    setInterval('for(c.width=w=99,++t,i=6e3;i--;c.getContext`2d`.fillRect(i%w,i/w|0,1-d*Z/w+s,1))for(a=i%w/50-1,s=b=1-i/4e3,X=t,Y=Z=d=1;++Z<w&(Y<6-(32<Z&27<X%w&&X/9^Z/8)*8%46||d|(s=(X&Y&Z)%3/Z,a=b=1,d=Z/w));Y-=b)X+=a',t=9)

    但是作者是怎么做的呢?如何用一行代码弄出一个城市的画面?思路是啥?
    25 条回复    2022-05-17 10:05:32 +08:00
    yunye
        1
    yunye  
       2022-05-16 11:35:00 +08:00
    webGL
    theprimone
        2
    theprimone  
       2022-05-16 11:41:26 +08:00
    路过,只能说很秀
    runze
        3
    runze  
       2022-05-16 11:53:00 +08:00
    setInterval 的第一个参数可以是字符串,相当于 eval ;
    for 的第一部分用作变量声明;
    for 的第三部分正常用作判断结束,这里相当于在正常循环体前执行的循环体;
    里面是一个类似的 for 循环。

    但是计算原理就不懂了
    stevezhengs
        4
    stevezhengs  
       2022-05-16 11:57:22 +08:00
    太秀了吧
    zuiluo
        5
    zuiluo  
       2022-05-16 11:57:34 +08:00
    虽然只有一行代码,但是定义了八个变量,信息量爆炸。

    简单说,定时器+嵌套循环( 6000x4000 )。循环生成一个个宽高透明度都不同的矩形,核心是一个复杂公式(公式包括条件分支,先生成楼主体,再生成楼窗户)
    pathletboy
        6
    pathletboy  
       2022-05-16 11:59:04 +08:00   ❤️ 3
    ccyu220
        7
    ccyu220  
       2022-05-16 12:58:00 +08:00
    wocao
    Tink
        8
    Tink  
       2022-05-16 13:12:21 +08:00 via Android
    我看不懂
    Uyuhz
        9
    Uyuhz  
       2022-05-16 13:31:20 +08:00
    一打开链接,我电脑花屏了..
    angith
        10
    angith  
       2022-05-16 13:44:41 +08:00
    wocao
    bytesfold
        11
    bytesfold  
       2022-05-16 13:59:01 +08:00
    太秀了。。。
    BrookO
        12
    BrookO  
       2022-05-16 14:01:30 +08:00
    此代码不是我这个凡人能理解的
    gdrk
        13
    gdrk  
       2022-05-16 14:14:10 +08:00
    艹,秀俺一脸
    zanxj
        14
    zanxj  
       2022-05-16 14:16:39 +08:00
    @Uyuhz #10 该换电脑了
    Uyuhz
        15
    Uyuhz  
       2022-05-16 14:43:22 +08:00
    @zanxj 刚换的幻 16..
    oneisall8955
        16
    oneisall8955  
       2022-05-16 15:27:14 +08:00
    太秀了,大佬就是大佬
    monkeyWie
        17
    monkeyWie  
       2022-05-16 15:49:27 +08:00
    秀啊
    7gugu
        18
    7gugu  
       2022-05-16 19:08:53 +08:00 via iPhone
    牛逼疯了
    i0error
        19
    i0error  
       2022-05-16 19:14:27 +08:00
    秀。。。。。
    AlphaTauriHonda
        20
    AlphaTauriHonda  
       2022-05-16 20:19:13 +08:00 via iPhone
    牛,这是怎么找到的。
    CSGO
        21
    CSGO  
    OP
       2022-05-16 20:47:00 +08:00
    @AlphaTauriHonda 随便看一下 codepen 看到的
    lizhenda
        22
    lizhenda  
       2022-05-17 00:06:37 +08:00 via iPhone
    难以理解…
    Mavious
        23
    Mavious  
       2022-05-17 06:35:05 +08:00
    我看到的城市建筑是模糊的,黑白模糊滚轴前进。。。。
    CSGO
        24
    CSGO  
    OP
       2022-05-17 08:35:14 +08:00 via Android
    @Mavious 是这样啊,问题是确实是 3d ,以及看上去就一航代码,让我感到不可思议。
    Constantine1
        25
    Constantine1  
       2022-05-17 10:05:32 +08:00
    6
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   926 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 20:43 · PVG 04:43 · LAX 12:43 · JFK 15:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.