this post was submitted on 20 Sep 2023
698 points (99.3% liked)

Technology

60085 readers
4129 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each another!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, to ask if your bot can be added please contact us.
  9. Check for duplicates before posting, duplicates may be removed

Approved Bots


founded 2 years ago
MODERATORS
 

AppLovin’s attempts to acquire Unity last year turned sour when Unity opted for a merger with rivals ironSource instead . Now, in the ongoing shockwave of Unity's unpopular introductio...

all 50 comments
sorted by: hot top controversial new old
[–] [email protected] 84 points 1 year ago (1 children)

Wow well I guess I'll eat crow. I never thought that was possible to automate but given the use of LLMs I guess it is... Excited to see how it turns out

[–] [email protected] 150 points 1 year ago (3 children)

From their GitHub, they use this prompt to ChatGPT:

You are professional Unity engineer who is migrating a large project from Unity platform to Godot 4.1. Migrate code to GDScript, which you are an expert in. Follow the following rules: 1. Output code only, put explanations as comments. 2. Do not skip any logic. 3. Preserve all comments without changing. 4. If migration is impossible leave "TODO [Migrate]" comment. 5. Use GDScript best practices. 6. Convert camelCase variable names and method names to snake_case. 7. Unity namespaces should migrate into 'class_name' directive. 8. Unity class should migrate into 'class_name' directive.

Personally I find this kind of thing adorable and I hope it works out for them

[–] [email protected] 43 points 1 year ago

That’s actually pretty hilarious.

[–] [email protected] 24 points 1 year ago (3 children)

Does ChatGPT's code get better if you include "You're an expert in that language" in the prompt?

[–] [email protected] 28 points 1 year ago

Well, it will get worse if you tell it they're an absolute fuckup

[–] [email protected] 22 points 1 year ago

It does occasionally because it filters out sources which doesn't fit that pattern, but it doesn't guarantee anything (for a variety of reasons, like inevitable statistical cross contamination in the model, bad samples like overconfident answers, smaller number of samples to learn from, etc).

[–] drislands 6 points 1 year ago (2 children)

Good question. Based on my limited understanding of LLMs, I don't see how it could...I'm interested to hear if that's not the case.

[–] EncryptKeeper 7 points 1 year ago* (last edited 1 year ago)

Because an LLM’s goal isn’t to always be the most correct at answering questions. It just says what it thinks you want it to say. It’s not that telling it that it’s an expert necessarily makes it smarter, you’re just specifying not to give you an answer as though it was an amateur, which otherwise it wouldn’t have any reason not to do.

[–] Jerkface 5 points 1 year ago

I use ChatGPT for math tutoring occasionally and when I started using the prompt "Suppose you are a professional mathematician," I got fewer responses resembling those you might get from a classmate and more which were thorough and rigorous.

[–] [email protected] 11 points 1 year ago (1 children)

I'm pretty interested to see the prompt they use for Unreal

[–] PoorlyWrittenPapyrus 19 points 1 year ago

You are professional Unity engineer who is migrating a large project from Unity platform to Unreal Engine 4. Migrate code to C++, which you are an expert in. Follow the following rules: 1. Always output exactly two code blocks: one with headers and other with implementations. 2. Do not skip any logic. 3. Preserve all comments without changing. 4. If migration is impossible leave "TODO [Migrate]" comment. 5. Use Unreal Engine C++ best practices.

[–] [email protected] 65 points 1 year ago (5 children)

It's interesting to me that articles mention godot before unreal. I mean this is not the first time I see it

[–] [email protected] 61 points 1 year ago (3 children)

There is a potential chance of unreal doing the same stupid shit afterall

[–] Why9 17 points 1 year ago* (last edited 1 year ago) (1 children)

The conspiracy theorist in me always thought stuff like this was the result of corporate espionage; a loyal employee of a rival firm joins their competitor's ranks and works their way up and finally gets the commanding role, only to announce something this dumb and then take it back (losing their reputation without anything in return) and then the guy leaves the company and finds a comfortable position on the board of their original rival company.

But... No? These people really are that stupid and actually did that to themselves.

And these are the people being paid 300x the salary of ordinary, hard working people!

[–] [email protected] 15 points 1 year ago (1 children)

A lot of the time when this type of thing comes from on high it really is actually a good move for the C suite and for shareholders in the short term. I'm saying this as if I know anything about the topic, I don't, but I have read about this.

CEOs that flight from company to company, brought in to be the saviour and increase profits a bajillion percent just like they promised, often have a bag of tricks of classic moves that aren't actually all that genius or clever but will, initially at least, appear to improve the bottom line. They may have obvious consequences which is why such an obvious move wasn't made before, but if they can ride the crest of the wave of initially positive results they can exit just in time to leave the place seemingly better off than before they arrived knowing full well it's all about to implode.

[–] [email protected] 2 points 1 year ago

Capitalism is trash-tier

[–] [email protected] 13 points 1 year ago (2 children)

Epic allows devs to stay under the license terms for specific versions of the engine. If they started charging for installs, devs can just use the older engine versions and avoid the charges.

[–] [email protected] 8 points 1 year ago (2 children)

They "don't" allow it, that's how licenses work.

I keep seeing comments like these on source available nonfree software, but it really doesn't factor in the fact that older software is NOT going to be used due to bugs, features missing, technical debt, secuity vulnerabilities, etc. So unless it is forked (i.e: OpenTofu), it is as good as useless for everyone but hobbyists.

[–] [email protected] 3 points 1 year ago (1 children)

It's allowed by a specific clause in their TOS which assigns a EULA version dependent on the engine version. The EULA itself is different for different versions.

The point is that devs choosing to stay on an old version would not be good for Epic, so they are unlikely to directly create the circumstances where that is the logical result.

[–] [email protected] 11 points 1 year ago (2 children)

Unity also had that clause

In fact, they tried to delete it after their announcement

[–] halcyoncmdr 7 points 1 year ago

Yup, they actually removed the entire GitHub repo that they made specifically to track those changes for transparency.

[–] [email protected] 4 points 1 year ago* (last edited 1 year ago)

The clause is:

If we make changes to this Agreement, you are not required to accept the amended Agreement, and this Agreement will continue to govern your use of any Licensed Technology you already have access to. However, if we make changes to this Agreement, you will not be allowed to access certain Epic services or download the Licensed Technology unless you have accepted the amended Agreement.

My understanding is this is fundamentally different to the Unity clause you're pointing out.

Another thing is that Unreal is ~~open source~~ source accessible. If there's a bug in 5.0 that is resolved in 5.1 but you don't want to accept the amended terms for 5.1, it's possible to fix the bug and build the engine yourself. In the event of a significant change like the one with Unity, I imagine some dev group would just fork it and maintain it themselves.

[–] [email protected] 1 points 1 year ago

They do, though. Not only do they offer multiple, flexible licenses, their basic license specifically guarantees that it is irrevocable. In fact, if that basic license isn't good enough, they are open to license negotiation.

I strongly recommend reading their basic license. It's already one of the most fair and reasonable "out of the box" licenses in the industry.

https://www.unrealengine.com/en-US/eula/unreal

[–] halcyoncmdr 18 points 1 year ago (3 children)

That's because both Unity and Godot use C# while Unreal uses C++ for development. It is much easier to move from Unity to Godot since they use the same language for development. Moving to Unreal basically means starting over.

[–] [email protected] 6 points 1 year ago (1 children)

Unity C# and Godot C# havr different APIs and writing in GDScript is best practise in godot afaik

[–] [email protected] 3 points 1 year ago

Yeah exactly, Unity and Godot both use C# the same way React and Svelte both use JavaScript. Definitely some level of transferability, but honestly worth learning GDScript in my opinion because it's a simple language and a pretty good fit for game scripting, and the one that gets first class attention from Godot.

[–] [email protected] 4 points 1 year ago (1 children)

Pretty sure Godot has it's own scripting language (hence the prompt converting all the C#/JS code from Unity).

Unreal is C++ but it's also another commercial proprietary engine, so they could rug-pull in the same way.

[–] [email protected] 2 points 1 year ago

Godot supports C# as well as its native python-like GDscript.

[–] [email protected] 4 points 1 year ago

I mean, UnrealCLR exists

[–] fluxion 6 points 1 year ago

Makes sense to not immediately jump into another walled garden if you have the option.

[–] [email protected] 61 points 1 year ago (1 children)

I think they're really overestimating ChatGPT's ability to code. Also how do they plan on fitting a context that big.

[–] petersr 4 points 1 year ago

It's is probably more of sending a message.

[–] [email protected] 18 points 1 year ago* (last edited 1 year ago)

Finnanly ,game dev maybe will start moving in open source side.

[–] [email protected] 8 points 1 year ago

AppLovin’s attempts to acquire Unity

I don't think the journalist quite understands the relationship here.

[–] MrCharles 7 points 1 year ago

Oh... Oh that is beautiful. Just chef's kiss