[{"data":1,"prerenderedAt":234},["ShallowReactive",2],{"project-17333044":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":29,"sentiment":30,"stance_mix":31,"scored_comments":36,"aspects":37,"strip":42,"post_text":43,"what":44,"said":67,"maker_in_thread":131,"shape":141,"grid":145,"attempts":197,"same_week":198,"maker_shows":35,"maker_hidden":226,"reader_version":227,"card":228},"17333044","rust-simd-noise","A SIMD-accelerated noise library in Rust","title","Show HN: A SIMD-accelerated noise library in Rust","https:\u002F\u002Fgithub.com\u002Fjackmott\u002Frust-simd-noise","github.com","gameswithgo",1529252954,2018,73,23,597,2155,28,"notable","languages","noise generation library","library",[24,25,26,27,28],"simd","noise generation","rust","procedural textures","perlin noise","curious",0.098,{"positive":32,"neutral":33,"mixed":34,"critical":35},3,5,0,1,9,{"design":38,"idea":39,"docs":41},{"positive":35,"critical":34},{"positive":40,"critical":34},2,{"positive":34,"critical":35},[33,34,32,34,34,32,34,33,35,34,34,34,34,34,34,34,34,32,32,34,33,32,34],null,{"problem":43,"audience":45,"pricing":43,"motivation":43,"time_to_build":43,"stack":56,"openness":66,"stage":66,"team_size":66},{"value":46,"source":47,"evidence":48},"Game and graphics programmers generating procedural textures and terrain","inferred",[49,52],{"id":50,"by":11,"text":51},"17334549","Generating textures and geometry in games and art tools are the most common applications. Some examples: http:\u002F\u002Flibnoise.sourceforge.net\u002Fexamples\u002Fcomplexplanet\u002Findex.html",{"id":53,"by":54,"text":55},"17334542","alkonaut","Generating procedural textures in 3D graphics, such as marble. Generating random texture things like topology heighmaps for maps in games. Those are the only two times I have…",[57],{"value":58,"source":59,"evidence":60},"Rust","maker",[61,63],{"id":62},"post",{"id":64,"by":11,"text":65},"17333745","As I get more familiar with rust macros I may compress this down a bunch. It will make it easier to maintain.","unknown",{"praise":68,"objections":78,"requests":85,"questions":107,"alternatives":122},[69],{"value":70,"source":71,"evidence":72},"Useful for procedural texture and geometry generation in games and art tools","commenter",[73,74],{"id":50,"by":11,"text":51},{"id":75,"by":76,"text":77},"17340792","joshuafcole","Another interesting usecase is generating seamlessly tiling noise [1]. Admittedly this is usually done in advance where slower performance is fine, but fully or mostly procedural…",[79],{"value":80,"source":59,"evidence":81},"Doing SIMD on 1D noise is likely pointless because it is already fast",[82],{"id":83,"by":11,"text":84},"17334860","The author of that is a good friend! I was showing him my SIMD C++ noise library and that inspired him to make that (which is much much better than the thing I had hacked…",[86,96,103],{"value":87,"source":71,"evidence":88},"Add more noise types such as value and white noise",[89,93],{"id":90,"by":91,"text":92},"17334608","virtualritz","Very nice! Any plans to extend it to support more noise types and 1D and 4D variants? This may serve for inspiration: https:\u002F\u002Fgithub.com\u002FAuburns\u002FFastNoiseSIMD",{"id":94,"by":11,"text":95},"17337885","These are all examples of \"Gradient Noise\" which is intended to produce naturally varying types of noise. There is also value noise, white noise (what you are thinking of),…",{"value":97,"source":71,"evidence":98},"Add 4D noise variants",[99,100],{"id":90,"by":91,"text":92},{"id":101,"by":91,"text":102},"17336748","4D ist commonly utilized for any 3D use case that needs to vary over time. Likewise, 3D noise is also used for 2D that needs to vary over time.",{"value":104,"source":59,"evidence":105},"Add scalar 1D noise versions",[106],{"id":83,"by":11,"text":84},[108,115],{"value":109,"source":71,"evidence":110},"What common use cases does this noise library have?",[111],{"id":112,"by":113,"text":114},"17334392","eismcc","What common use cases does this have? Not sure when I’d ever use it.",{"value":116,"source":71,"evidence":117},"Why use the Intel intrinsic C API rather than assembly?",[118],{"id":119,"by":120,"text":121},"17333400","obl","Any reason to stick with the horrible intel intrinsic C API ? TBH I find assembly kernels generally more readable as long as one keep a few comments in there to explicit register…",[123,127],{"value":124,"source":71,"evidence":125},"FastNoiseSIMD",[126],{"id":90,"by":91,"text":92},{"value":128,"source":71,"evidence":129},"libnoise",[130],{"id":50,"by":11,"text":51},{"comments":132,"answered":40,"key":133},7,[134,137,138],{"id":135,"text":136},"17333675","exactly!",{"id":83,"text":84},{"id":139,"text":140},"17337873","Yeah I understand that being the stated reason I've just not seen it actually done very often as the performance\u002Fmemory use is an issue. I've been surveying some people though…",{"commenters":142,"max_depth":33,"maker_replies":132,"first_comment_mins":143,"lifespan_hours":144},13,80,27,[146,150,152,154,158,159,160,161,163,165,168,170,172,174,176,179,183,186,187,188,189,192,195],[147,34,33,148,149,34],"17333575","project\u002Fpositive\u002Fdesign","yoklov",[135,34,34,151,11,35],"commenter\u002Fneutral\u002Fnone",[90,35,32,153,91,34],"project\u002Fneutral\u002Fidea",[155,35,34,156,157,34],"17334740","other\u002Fneutral\u002Fnone","toxik",[83,35,34,153,11,35],[101,35,32,153,91,34],[139,35,34,153,11,35],[75,35,33,162,76,34],"project\u002Fpositive\u002Fidea",[119,40,35,164,120,34],"project\u002Fcritical\u002Fdocs",[166,40,34,151,167,34],"17333674","stagger87",[169,40,34,151,120,34],"17333708",[64,40,34,171,11,35],"maker\u002Fneutral\u002Fdesign",[173,40,34,151,167,34],"17333780",[175,40,34,151,11,35],"17333969",[177,40,34,151,178,34],"17334883","burntsushi",[180,40,34,181,182,34],"17334174","other\u002Fneutral\u002Fdesign","pornel",[184,40,34,181,185,34],"17334565","kibwen",[112,32,32,153,113,34],[53,32,32,153,54,34],[50,32,34,153,11,35],[190,32,33,191,113,34],"17335661","maker\u002Fpositive\u002Fidea",[193,32,32,153,194,34],"17336643","Cthulhu_",[94,32,34,196,11,35],"maker\u002Fneutral\u002Fidea",[],[199,204,209,214,218,222],{"id":200,"name":201,"points":202,"category":203},"17344419","Open Logos",680,"creative",{"id":205,"name":206,"points":207,"category":208},"17346616","Posthook",162,"infrastructure",{"id":210,"name":211,"points":212,"category":213},"17310483","World Cup API",141,"data",{"id":215,"name":216,"points":217,"category":203},"17355328","MRuby-Zest",78,{"id":219,"name":220,"points":221,"category":20},"17312562","Hamdown",64,{"id":223,"name":224,"points":225,"category":20},"17313728","Quiver",54,false,"v2",{"id":229,"name":5,"line":6,"ai":226,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":230,"top":18,"kw":231,"maker":11,"domain":10,"tier":19,"attempts":34,"strip":232,"url":9,"mix":233,"praise":70,"objection":80,"sub":21},17333044,0.1,[24,25,26,27,28],"50300305100000000330530",[32,33,34,35],1794036566986]