TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Starlight.jl – A game engine written in Julia

74 点作者 snicker7将近 3 年前

5 条评论

teruakohatu将近 3 年前
There are some major bounties for features, four with $5000 bounties). From the FAQ section:<p>&gt; Where did the maintainer get so much money for bounties?<p>&gt; He didn&#x27;t. He is taking a calculated risk that 1) being in debt to contributors is better than being in debt to, say, a credit card company and 2) that the rate of issue resolution will not exceed his income. Note that this means you may not get paid immediately. But on our honor, you will get paid.<p>The author is a grad student, I hope he does not find a few of those $5k bugs knocked out in a month by hungry devs!
评论 #31649017 未加载
评论 #31648925 未加载
teruakohatu将近 3 年前
If the author is reading this, I suggest you articulate what starlight&#x27;s point of difference is and why Julia would make for a good game environment.<p>If you added some Agents.jl integration, it could become a killer backend for ABM (Agent Based Modelling), maybe better than Agents.jl&#x27;s CairoMakie backend. But of course simulations are not games (or at least until a Twitch stream starts playing with it)
jhigginbotham64将近 3 年前
Hey everyone, I&#x27;m Josh Higginbotham, the author&#x2F;maintainer of Starlight.jl.<p>Thanks for creating and participating in this thread, there&#x27;s a lot of valuable information for me here in the form of y&#x27;all&#x27;s thoughts and opinions.<p>I thought I&#x27;d make an appearance and address some of the questions and concerns that have been raised here.<p>With respect to actual money being on the table and my ability to pay, not only is actual money on the table but I have already paid out more than $1000 USD in bounties to different contributors. Conceptually the bit about not being able to pay immediately boils down to &quot;potential paying issues are infinite but my resources are not&quot;. So far I haven&#x27;t had to deal with a contract being completed and not having the money to pay immediately, but if that situation were to arise (and as the project grows the probability that it will occur increases), my approach would be to put away a portion of my paycheck each month to save up to pay the bounty. If this happened with multiple bounties at once, I&#x27;d pay them in order by date of completion.<p>With respect to the proposal&#x2F;approval system, this is something I came up with chiefly in order to prevent a &quot;Wild West&quot; scenario with different contributors competing for the same bounty. Not only does this eliminate that concern but it helps me establish relationships with contributors that in turn help ensure that quality work is done.<p>With respect to the quality of work I expect, yes I do reserve the right not to pay for contributions I don&#x27;t like, even given a completed proposal and months of work invested. That&#x27;s a worst-case scenario, but theoretically it could happen. It would be conceptually equivalent to, say, firing someone, or terminating a contract on a dedicated freelancing site like Upwork. Yeah that&#x27;s a lot of power in my hands, but the open-source nature of this project ensures some accountability. If I treat people badly (and especially if I decide to use their work anyway) I risk losing contributors, and in the worst case I risk a fork under new leadership. In order to maintain a good project I have to maintain a good community, and whether I like it or not, that means I have a reputation to uphold. Which reminds me that eventually I&#x27;ll need to establish community standards at some point. Right now I&#x27;m just ripping off Julia&#x27;s. I may create a bounty issue for that, who knows.<p>With respect to some of the bounty issues not being well-defined, the answer is yes, whoever said that part of the point of proposals is helping me define issues was absolutely correct. This is especially true for things like the CONTRIBUTING.md, where fully defining the problem is tantamount to writing the actual document. Figuring out what makes an acceptable proposal is a tricky balancing act that I have to manage.<p>With respect to how value is assigned to bounties, unfortunately that is in fact somewhat arbitrary. Basing it on a combination of experience and man-hours required would look better on paper but ultimately not be much less arbitrary, especially given my own relative lack of experience. If anyone would like to offer a solution, I&#x27;m all ears.<p>With respect to Starlight&#x27;s uniqueness and value, as well as Julia&#x27;s suitability for game programming, that&#x27;s something I&#x27;m still exploring. This project came about as a result of me trying to write graphics applications in Python and wondering whether a faster language with native matrices might be a better fit. Enter Julia. I&#x27;m with y&#x27;all in questioning some of its core paradigms, especially as a fan of Python&#x27;s approach to OO programming, but so far I&#x27;ve found that working &quot;with&quot; Julia rather than &quot;around&quot; or &quot;against&quot; it tends to get better results than I could have achieved in a different language. All of that is to say that the sales pitch is something I&#x27;m still working on.<p>The ultimate motivation though is that I just like Julia and want to be able to make games with Julia. Just about every other major programming language has a major game programming toolkit available, why not Julia? Simply because no one&#x27;s done it yet. I wanted Starlight.jl to exist but it didn&#x27;t yet, so I decided to build it myself.<p>To be clear, I am not here to involved in any flame wars about language design. The answer to the question of &quot;why Julia&quot; is essentially &quot;because no one&#x27;s tried it yet&quot;. GameZero is a highly-simplified engine for students and teachers, so that doesn&#x27;t really count. And AFAIK Gloria is not actively maintained, so it doesn&#x27;t count either. Meanwhile the answer to the question of &quot;is Julia ready&quot; is &quot;it doesn&#x27;t matter because any work we do has the potential to influence the course of its development anyway&quot;.<p>See the repo for information on how to get in touch with me. I&#x27;m happy to talk &quot;offline&quot; about this.<p>P.S. Unity has been described as &quot;a C++ engine with a .NET layer&quot;. Starlight is a C++ engine with a Julia layer, where the C++ engine is its own open-source project being developed in parallel by yours truly. It&#x27;s called Telescope. If anyone&#x27;s interested I can post more details about it.<p>P.P.S. The Agents thing is a good idea. I&#x27;m still deciding whether to go with Agents or Actors. Maybe we could use both? Either way the best thing to do is create an issue for it. :)
crabbygrabby将近 3 年前
The only game thing I&#x27;ve seen written in Julia was a map editor for Celeste. Turns out the author got too encumbered by the build process&#x2F;release cycle&#x2F;dealing with julia they switched to I think lua.<p>Julia is a fine language, but it&#x27;s really not made for games... I feel bad they are paying people what sounds like more than they can afford to work on this. I hope it works out for them...
adenozine将近 3 年前
Julia needs proper interfaces before I’d write an entire game with it.<p>I’ve found it strange that so many people prefer it to Python, aside from performance magic. It seems so klunky to actually use.
评论 #31649347 未加载
评论 #31650148 未加载