[Development] Question about Qt's future

Sze Howe Koh szehowe.koh at gmail.com
Wed Apr 23 16:50:23 CEST 2014


Hi Marius,

On 23 April 2014 20:14, cincirin <cincirin at gmail.com> wrote:
> Sorry for re-open this topic, but as someone else already pointed out,
> what do you think about the Unreal engine guys to abandon the unreal
> script which was used until now for many years ?
> To quote some comments:
> "In the past, gameplay code existed in UnrealScript. UnrealScript is the
> scripting language which forms the core of current community mods, and
> much of the gameplay code of all previous Unreal Engine titles.
> However, UnrealScript is being removed.
> In its place, the engine will be 100% C++, and highly optimized."

I think UnrealScript and QML have different use cases.

UnrealScript was for _all_ the code: GUI and core logic. The article
says it was replaced because C++ gives better logic performance. I
think that makes sense, because games need to run complex code.

With QML, the general idea is to use QML for the GUI and use C++ for core logic.

Also, UnrealScript and C++ are imperative languages which are
well-suited for writing instructions. QML is a declarative language
(like HTML/CSS), which is well-suited for writing GUIs. It's a good
idea to choose the best tool for any job.


> Also I'm curios why Android xml files are good for design the UI, but
> "old" QtDesigner ui (xml) files seems to be deprecated in favor of qml.

Which of the following do you prefer?

//================================================
// Android XML
// http://developer.android.com/guide/topics/ui/declaring-layout.html
//================================================

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                  android:layout_width="fill_parent"
                  android:layout_height="fill_parent"
                  android:orientation="vertical" >
        <TextView android:id="@+id/text"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:text="I am a TextView" />
       <Button android:id="@+id/button"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:text="I am a Button" />
    </LinearLayout>

//================================================
// QML
// Don't need "wrap_content", because it's default behaviour
//================================================

    ColumnLayout {
        anchors.fill: parent
        TextEdit {
            id: textEdit
            text: "I am a TextEdit"
        }
        Button {
            id: button
            text: "I am a Button"
        }
    }


> Best regards,
>    Marius

Regards,
Sze-Howe



More information about the Development mailing list