[{"data":1,"prerenderedAt":536},["ShallowReactive",2],{"project-12612246":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":27,"sentiment":28,"stance_mix":29,"scored_comments":33,"aspects":34,"strip":43,"post_text":45,"what":46,"said":68,"maker_in_thread":139,"shape":148,"grid":153,"attempts":498,"same_week":499,"maker_shows":16,"maker_hidden":528,"reader_version":529,"card":530},"12612246","Wave function collapse","Wave function collapse algorithm","title","Show HN: Wave function collapse algorithm","https:\u002F\u002Fgithub.com\u002Fmxgmn\u002FWaveFunctionCollapse","github.com","ExUtumno",1475241643,2016,1226,122,2,2264,1,"legend","ai","procedural generation","library",[24,21,25,26],"wave function collapse","texture synthesis","constraint satisfaction","loved",0.455,{"positive":30,"neutral":31,"mixed":16,"critical":32},32,33,5,72,{"idea":35,"execution":38,"docs":40,"design":41,"performance":42},{"positive":36,"critical":37},20,0,{"positive":39,"critical":37},3,{"positive":16,"critical":32},{"positive":18,"critical":37},{"positive":16,"critical":37},[39,39,39,39,32,32,32,32,39,44,39,39,32,32,37,37,37,37,37,32,44,18,32,39,32,39,32,32,39,39,39,39,32,32,32,32,44,39,18,32],4,null,{"problem":47,"audience":45,"pricing":45,"motivation":45,"time_to_build":45,"stack":57,"openness":66,"stage":67,"team_size":67},{"value":48,"source":49,"evidence":50},"Generates new images or tile layouts that look like an input sample while keeping its local patterns","maker",[51,54],{"id":52,"by":11,"text":53},"12613285","Thanks! Efros' and Leung's method doesn't satisfy the (C1) condition. The closest previous work is Paul Merrel's model synthesis. WFC and texture synthesis serve similar…",{"id":55,"by":11,"text":56},"12618281","Yes, (C1) is a constraint problem. But we also want to satisfy (C2) as close as possible, otherwise we could have just colored some outputs in a single color.",[58],{"value":59,"source":60,"evidence":61},"C#","commenter",[62],{"id":63,"by":64,"text":65},"12613645","ejcx","I love that one of the files is \"Stuff.cs\". Super neat visuals and I can't wait to play with this, as someone who knows nothing about this kind of \"stuff\".","open_source","unknown",{"praise":69,"objections":89,"requests":99,"questions":111,"alternatives":123},[70],{"value":71,"source":60,"evidence":72},"Impressive visual results and procedural generation potential for games and maps",[73,77,81,85],{"id":74,"by":75,"text":76},"12612623","antirez","Very cool algorithm, and impressive visual results. Thanks for sharing.",{"id":78,"by":79,"text":80},"12613786","artursapek","Amazing. If this is fast enough, I imagine it could do wonders for games (terrain and background generation).",{"id":82,"by":83,"text":84},"12613343","wodencafe","That's incredible! This could be great for generating maps in a sprite based strategy game!",{"id":86,"by":87,"text":88},"12614057","matthewwiese","Excellent! I especially like the example third from the top (black\u002Fwhite \"rooms\"). This would be a great tool to generate maps for roguelikes in a more \"organic\" fashion. Not…",[90],{"value":91,"source":49,"evidence":92},"Very slow on large or high-pattern inputs",[93,96],{"id":94,"by":11,"text":95},"12615054","About harder and easier to satisfy, the question of how the rate at which the algorithm runs into contradictions depends on the input is not easy at all. There is no simple…",{"id":97,"by":11,"text":98},"12615221","I wonder too =). But it'll run like forever on a high res image. For high res image you want to use something like texture synthesis, see my reply to fitzwatermellow for more.",[100],{"value":101,"source":60,"evidence":102},"Apply to music or audio",[103,107],{"id":104,"by":105,"text":106},"12612553","twfarland","Mindblowing... could this technique also be applied to music?",{"id":108,"by":109,"text":110},"12615735","mirekrusin","Can this approach be used to generate \"missing parts\" in unfinished song? If composer has few good parts but is too lazy to finish the whole piece, for example? Or to \"extend\"…",[112],{"value":113,"source":60,"evidence":114},"How does this relate to wave function collapse and how is it different from texture synthesis",[115,119],{"id":116,"by":117,"text":118},"12612837","ianai","I'm missing a lot here. How does this equate to wave function collapse?",{"id":120,"by":121,"text":122},"12612535","fitzwatermellow","Great work! The fact that it captures \"long-range order\" seemingly perfectly is something not many have been able to do before! And the \"collapse\" visualization is great fun to…",[124,128,132],{"value":125,"source":60,"evidence":126},"Efros and Leung texture synthesis",[127],{"id":120,"by":121,"text":122},{"value":129,"source":49,"evidence":130},"Model synthesis by Paul Merrel",[131],{"id":52,"by":11,"text":53},{"value":133,"source":60,"evidence":134},"PatchMatch",[135],{"id":136,"by":137,"text":138},"12613303","amelius","This reminds me of the quite powerful PatchMatch algorithm [1]. Is it related? Also note how PatchMatch can work with constraints. [1]…",{"comments":140,"answered":141,"key":142},22,13,[143,144,147],{"id":52,"text":53},{"id":145,"text":146},"12615062","Thanks, I'll look into it.",{"id":94,"text":95},{"commenters":149,"max_depth":150,"maker_replies":140,"first_comment_mins":151,"lifespan_hours":152},79,9,51,94,[154,156,158,162,164,167,169,172,174,177,180,183,185,188,192,196,199,202,206,210,213,216,219,222,225,227,230,232,235,237,240,242,245,247,248,250,252,255,257,261,263,266,269,272,275,278,281,283,286,289,292,294,296,298,301,303,305,308,311,316,318,321,324,326,329,333,335,338,343,345,347,351,355,357,359,361,364,367,369,374,376,380,383,387,389,391,394,397,399,402,404,407,409,411,413,416,419,422,426,428,431,433,435,437,441,444,448,450,454,458,462,466,468,469,473,476,479,482,484,487,491,494],[120,37,39,155,121,37],"project\u002Fmixed\u002Fidea",[52,37,37,157,11,18],"maker\u002Fneutral\u002Fidea",[159,37,39,160,161,37],"12613644","project\u002Fneutral\u002Fidea","spot",[145,37,37,163,11,18],"maker\u002Fneutral\u002Fnone",[165,37,39,160,166,37],"12614372","derefr",[94,37,37,168,11,18],"maker\u002Fneutral\u002Fperformance",[170,37,39,160,171,37],"12615816","mathgenius",[173,37,37,157,11,18],"12618110",[175,37,37,176,171,37],"12632851","other\u002Fneutral\u002Fnone",[178,37,39,160,179,37],"12626205","HelloNurse",[181,37,39,163,182,37],"12615180","bronz",[184,37,39,160,121,37],"12615732",[186,37,37,176,187,37],"12617960","dgreensp",[189,37,32,190,191,37],"12634799","project\u002Fpositive\u002Fexecution","Aqwis",[193,18,32,194,195,37],"12612620","project\u002Fpositive\u002Fidea","etatoby",[197,18,32,194,198,37],"12613256","chronolitus",[200,18,37,176,201,37],"12614021","borgel",[203,18,37,204,205,37],"12615105","other\u002Fpositive\u002Fnone","brianpgordon",[207,18,37,208,209,37],"12614919","other\u002Fneutral\u002Fidea","Keyframe",[211,16,32,194,212,37],"12615244","Balgair",[214,16,39,157,215,37],"12616146","4bpp",[217,16,37,218,212,37],"12622794","commenter\u002Fneutral\u002Fnone",[220,39,32,194,221,37],"12613882","phodo",[223,44,32,194,224,37],"12613050","throwaway000002",[226,44,37,160,11,18],"12613732",[228,44,39,160,229,37],"12613787","DennisP",[231,44,37,160,11,18],"12615125",[233,44,32,194,234,37],"12613939","hackpert",[236,44,39,160,166,37],"12614392",[238,44,39,160,239,37],"12614748","pfd1986",[241,44,39,160,171,37],"12615813",[243,32,39,160,244,37],"12616027","abecedarius",[246,32,39,160,244,37],"12616706",[55,32,37,157,11,18],[249,32,39,157,244,37],"12619020",[251,32,37,157,11,18],"12619450",[253,32,32,254,244,37],"12620798","maker\u002Fpositive\u002Fidea",[256,32,37,157,11,18],"12623761",[258,32,32,259,260,37],"12622221","maker\u002Fpositive\u002Fdocs","throwathrowaway",[104,262,32,194,105,37],6,[264,262,32,194,265,37],"12612719","kowdermeister",[267,262,37,176,268,37],"12613045","mistagiggles",[270,262,37,271,11,18],"12613469","project\u002Fcritical\u002Fidea",[273,262,37,176,274,37],"12613542","barrkel",[276,262,37,176,277,37],"12614194","ssalazar",[279,262,37,176,280,37],"12614267","jmilloy",[282,262,37,176,277,37],"12614395",[284,262,37,176,285,37],"12614300","elihu",[287,262,37,218,288,37],"12613583","JonnieCache",[290,262,37,218,291,37],"12613633","elevensies",[293,262,37,218,274,37],"12613682",[295,262,37,218,288,37],"12613692",[297,262,37,218,277,37],"12614132",[299,262,37,218,300,37],"12614253","tamana",[302,262,37,218,166,37],"12614443",[304,262,37,218,277,37],"12614116",[306,262,37,218,307,37],"12615087","BHSPitMonkey",[309,262,39,160,310,37],"12614484","toxik",[312,313,32,314,315,37],"12612787",7,"project\u002Fpositive\u002Fdesign","xixixao",[86,317,32,194,87,37],8,[319,150,32,194,320,37],"12612724","bduerst",[322,150,32,194,323,37],"12615177","sushisource",[116,325,39,160,117,37],10,[327,325,39,160,328,37],"12612922","vinchuco",[330,325,18,331,332,37],"12613091","project\u002Fcritical\u002Fdocs","netsec_burn",[334,325,18,331,117,37],"12613262",[336,325,18,331,337,37],"12616367","kereta",[339,340,32,341,342,37],"12612738",11,"project\u002Fpositive\u002Fperformance","phaedrus",[136,344,39,160,137,37],12,[346,344,37,157,11,18],"12613519",[348,141,39,349,350,37],"12612518","project\u002Fneutral\u002Fdocs","valine",[352,141,37,353,354,37],"12612757","commenter\u002Fneutral\u002Fdocs","TheRealPomax",[356,141,37,353,328,37],"12612774",[358,141,37,259,11,18],"12613969",[82,360,32,194,83,37],14,[362,360,32,194,363,37],"12613710","khalilravanna",[365,360,37,218,366,37],"12614101","Sire",[368,360,37,176,363,37],"12615520",[370,371,39,372,373,37],"12612907",15,"project\u002Fneutral\u002Fperformance","Sharlin",[375,371,37,168,11,18],"12613940",[377,378,32,194,379,37],"12612546",16,"tgb",[381,378,32,194,382,37],"12612872","mc42",[384,385,32,194,386,37],"12613654",17,"michrassena",[388,385,37,157,11,18],"12613889",[390,385,37,176,386,37],"12615305",[392,393,39,160,328,37],"12612843",18,[395,393,39,160,396,37],"12612912","kazinator",[398,393,37,157,11,18],"12613429",[400,393,39,157,401,37],"12613977","wyager",[403,393,37,157,11,18],"12615197",[405,393,39,406,401,37],"12616369","maker\u002Fneutral\u002Fdocs",[408,393,37,406,11,18],"12618335",[410,393,39,160,310,37],"12614603",[412,393,37,163,11,18],"12615160",[414,393,37,176,415,37],"12615827","krylon",[417,393,37,176,418,37],"12617526","palunon",[420,393,39,160,421,37],"12627889","MikeTV",[423,424,39,160,425,37],"12613651",19,"Myrmornis",[427,424,37,157,11,18],"12615288",[429,36,32,194,430,37],"12612566","hood_syntax",[108,432,39,160,109,37],21,[434,432,37,157,11,18],"12619272",[74,140,32,436,75,37],"project\u002Fpositive\u002Fnone",[438,439,32,194,440,37],"12612902",23,"alexmorenodev",[63,442,32,443,64,37],24,"project\u002Fpositive\u002Fdocs",[445,446,32,190,447,37],"12615504",25,"smilekzs",[78,449,32,341,79,37],26,[451,452,39,155,453,37],"12616215",27,"WhitneyLand",[455,456,32,190,457,37],"12616448",28,"partycoder",[459,460,32,194,461,37],"12612992",29,"psyc",[463,464,39,372,465,37],"12612516",30,"chrischen",[467,464,39,160,328,37],"12612926",[97,464,37,168,11,18],[470,471,32,436,472,37],"12614139",31,"xer0x",[474,30,18,331,475,37],"12612544","CiPHPerCoder",[477,30,39,349,478,37],"12612598","zitterbewegung",[480,30,18,331,481,37],"12613103","nitrix",[483,30,37,406,11,18],"12615245",[485,31,32,436,486,37],"12613641","isoprophlex",[488,489,39,349,490,37],"12613854",34,"natch",[492,489,39,349,493,37],"12614875","nhatbui",[495,496,32,436,497,37],"12612589",35,"angelftbcn",[],[500,505,510,514,519,523],{"id":501,"name":502,"points":503,"category":504},"12621680","Ascii to SVG",416,"dev_tools",{"id":506,"name":507,"points":508,"category":509},"12646083","Mastodon",364,"infrastructure",{"id":511,"name":512,"points":513,"category":504},"12639612","christophercliff.com",158,{"id":515,"name":516,"points":517,"category":518},"12640851","Cypht",110,"productivity",{"id":520,"name":521,"points":522,"category":20},"12619694","Graph Convolutional Networks",106,{"id":524,"name":525,"points":526,"category":527},"12621655","Forgiva",97,"security_privacy",false,"v2",{"id":531,"name":5,"line":6,"ai":528,"cat":20,"year":13,"points":14,"comments":15,"rec":27,"s":532,"top":18,"kw":533,"maker":11,"domain":10,"tier":19,"attempts":37,"strip":534,"url":9,"mix":535,"praise":71,"objection":91,"sub":21},12612246,0.46,[24,21,25,26],"3333555534335500000541535355333355554315",[30,31,16,32],1794036548197]