Framework to allow custom-made books to automatically reflect text onto their pages. In addition, it allows the use of the same book model to contain different text.
This framework allows users to incorporate customizable books into their game world without constraints on the length of the text used. When a player interacts with the book actor, a second and identical book spawns and approaches the player’s camera. Once in front of the player’s camera, it opens, revealing the text printed onto the book pages.
This system works mainly through two different blueprints (BPs):
The 3 pages will cycle and change position in order to simulate the existence of several additional pages in the book. This enables each book to support very lengthy texts. Obviously, the use of very lengthy texts will cause hiccups on the system when the book is initially interacted with (e.g., I tried this with about the first 100 thousand characters from the Holy Bible). Once it is loaded, you can go to the next and previous page at will, and no further hiccups should occur. A limitation of this methodology is that you are not able to add images, only text is parsed.
Finally, a book can be created or modified through 3D software like Blender to create unique designs that complement your game environment (simplest method is to modify the book binding, and leave the pages unchanged). The project currently includes an example notebook made of leather.
Change log:
Version 1.2
Version 1.1
Features
Asset Statistics
Animation Assets: 5
Audio Assets: 3 sounds and 3 sound cues
Blueprints: 5
Materials: 2 materials and 4 material instances
Textures: 9
Static Meshes: 1
Skeletal Meshes: 3 (+ 3 Physic Assets)
Demo Assets: 3 blueprints, 9 input-related, 1 level, 1 texture, and 1 widget blueprint
Other information
Input: In the demo, you press E to interact with the book, and to flip to the next page once a book is open. To close a book, you press TAB, and you press Q to flip to the previous page.
Network Replicated: No
Supported Development Platforms: Windows: Yes / Mac: Not tested
Documentation: Link
Important/Additional Notes: