diff --git a/_posts/2024-12-17-devlog-10-24.md b/_posts/2024-12-17-devlog-10-24.md new file mode 100644 index 0000000..1785da4 --- /dev/null +++ b/_posts/2024-12-17-devlog-10-24.md @@ -0,0 +1,181 @@ +--- +title: "Rakugo Project Devlog #10/24" +date: 2024-12-17 +published: true +categories: + - news + - docs + - devlog +author: "Jeremi360" +excerpt: "In this Devlog: + **Update on Incremental Updates**, + **Rakugo Nodes 1.0 release**, + **Godot Fonts Icons 1.0** release is ready to replace* + **Godot Material Icons** and **Emojis for Godot** + " +--- + +Hi everyone, welcome to **10th** devlog of **Rakugo Project** in year 2024. +If you find my projects useful, you can support the project via **[Patreon]**. +Thank you very much, if you decided to do! + +## Update on Incremental Updates + +Since a lot of time has passed since the previous devlog, +you might have thought that the switch to the Incremental Updates system was unsuccessful. +The truth is that the assignment I was working on got delayed and only finished at the beginning of this month. + +The switch to the Incremental Updates system itself was successful, +but it took some time, because if someone checks the commits to Godot Font Icons, +they will see that they are mostly fixes, with only one new feature added in the meantime. + +## Rakugo Nodes v1.0 + +So what is Rakugo Nodes, and why didn't I say anything about it before? + +Well, it's a project that happened and will happen as an incident of other projects. +Because it's an up-to-date collection of different nodes, +that my other projects use, but which can also be used separately. + +The first such node is **ButtonContainer**, +it is used by Godot Fonts Icons and will also be used by the next version of **AdvancedText**. +**ButtonContainer** is a node that allows you to easily create a button with non-standard content, +because it is a **Container** that looks and behaves like **Button**, but does not inherit from it. + +Here are examples of its use: + +![](/images/devlog/ButtonContanier-ex01.gif) + +![](/images/devlog/ButtonContanier-ex02.gif) + +![](/images/devlog/ButtonContanier-ex03.gif) + +**You can [Download it from here](https://github.com/rakugoteam/Rakugo-Nodes/releases).** + + +## Godot Icons Fonts v1.0 + +***Compatible with Godot 4.1+*** + +Makes easy to find and use icons from popular icon-fonts in your Godot project. + +## What problems it solves: + +### You only needs this addon - as you don't have: +1. to go online find font +1. then find icon +1. check icon licence - and maybe you need to search for another +1. finally download it + +### Better alterative to Godot's build emojis as +- to use them you need to find unicode online +- they don't work on some platforms for example Web +- they are outdated + +## Included + +### Dependencies +- [Rakugo Nodes](https://github.com/Jeremi360/Rakugo-Nodes) + +### Icons Fonts +- [*Templarian's Material-Design-Icons*](https://github.com/templarian/MaterialDesign),
+ a collection of icons for the [Material Design](https://material.io/) specification. +- [Google Noto Emojis Color font][noto-emoji] + +*Material-Design-Icons* +![](https://github.com/rakugoteam/Godot-Icons-Fonts/raw/godot-4/.assets/mi-docked.png) + +*Noto-Emojis* +![](https://github.com/rakugoteam/Godot-Icons-Fonts/raw/godot-4/.assets/emojis-docked.png) + +### Resource +**FontIconSetting** - Resource for setting which and how to display FontIcon. + +![](https://github.com/rakugoteam/Godot-Icons-Fonts/raw/godot-4/.assets/font-icon-settings.png) + +### Nodes +- **FontIcon**: Control Node that displays IconFont. +- **FontIconButton**: Button* That have IconFont and can have label. +- **FontIconCheckButton**: CheckButton* That have IconFont and can have label. + +\* - Those nodes behaves like button, +but they don't extends from **Button**. + +*FontIcon* +![](https://github.com/rakugoteam/Godot-Icons-Fonts/raw/godot-4/.assets/mi-font-icon.png) + +*FontIconButton* +![](https://github.com/rakugoteam/Godot-Icons-Fonts/raw/godot-4/.assets/emoji-button.png) + +*FontIconCheckButton* +![](https://github.com/rakugoteam/Godot-Icons-Fonts/raw/godot-4/.assets/mi-check-button.png) + +### Singleton +**IconsFonts** is singleton for easier use of icons anywhere in your project. + +## In Editor +It's adds **IconsFinder** (docked to bottom by default). +So you can find the icons easily, click on icon to get its name to clipboard. +It can be in dock mode at bottom or in window mode. + +That can be switched in Godot's **Tools** menu. +![](https://github.com/rakugoteam/Godot-Icons-Fonts/raw/godot-4/.assets/menu-tools.png) + +Or using *Command Pallet* (`Ctrl+Shift+P`) +![](https://github.com/rakugoteam/Godot-Icons-Fonts/raw/godot-4/.assets/command-pallet.png) + +*docked mode* +![](https://github.com/rakugoteam/Godot-Icons-Fonts/raw/godot-4/.assets/mi-docked.png) + +*window mode* +![](https://github.com/rakugoteam/Godot-Icons-Fonts/raw/godot-4/.assets/emojis-window.png) + +## Using it with RichTextLabel +You can use the icons in RichTextLabel. + +![](https://github.com/rakugoteam/Godot-Icons-Fonts/raw/godot-4/.assets/rich-text-icons.png) + +```gdscript +@tool +extends RichTextLabel + +@export_multiline +var text_with_icons: String: + set(value): + if !is_node_ready(): await ready + text_with_icons = value + bbcode_enabled = true + text = IconsFonts.parse_text(value) + + get: return text_with_icons + +func _ready(): + bbcode_enabled = true + text = IconsFonts.parse_text(text_with_icons) +``` + +## Exporting +For emojis to work in exported projects, +you need add `*.json` files to include files settings: +![](https://github.com/rakugoteam/Godot-Icons-Fonts/raw/godot-4/.assets/export.png) + +## Know Issues +- Window mode is init with empty icons render* + +\**To fix just change back-and-forward to icon font you want to use.* + +## Compatibility +This addon is replacing our previous to addons: +- [Godot Material Icons](https://github.com/rakugoteam/Godot-Material-Icons) +- [Emojis For Godot](https://github.com/rakugoteam/Emojis-For-Godot) + +We had broken backward compatibility with them for those reasons: +- In feature we want to support more IconsFonts so we can use `[icon:icons-name]` in text parsing. +- We redesigned how addon works under the hood +- We had too rename nodes + +**You can [Download it from here](https://github.com/rakugoteam/Godot-Icons-Fonts/releases/).** + +_Merry Christmas, and see you in Happy New Year!_ + +[Patreon]: https://www.patreon.com/rakguoteam \ No newline at end of file diff --git a/images/devlog/ButtonContanier-ex01.gif b/images/devlog/ButtonContanier-ex01.gif new file mode 100644 index 0000000..6adc0a4 Binary files /dev/null and b/images/devlog/ButtonContanier-ex01.gif differ diff --git a/images/devlog/ButtonContanier-ex02.gif b/images/devlog/ButtonContanier-ex02.gif new file mode 100644 index 0000000..0d71261 Binary files /dev/null and b/images/devlog/ButtonContanier-ex02.gif differ diff --git a/images/devlog/ButtonContanier-ex03.gif b/images/devlog/ButtonContanier-ex03.gif new file mode 100644 index 0000000..0777868 Binary files /dev/null and b/images/devlog/ButtonContanier-ex03.gif differ