This commit is contained in:
2025-08-08 13:31:51 +07:00
commit 80042751d8
4 changed files with 1370 additions and 0 deletions

BIN
Archive.zip Normal file

Binary file not shown.

167
README.md Normal file
View File

@@ -0,0 +1,167 @@
# Text Texture Generator - Blender Addon
A modern Blender addon that generates image textures from text with extensive customization options.
## Features
- **Text Input**: Enter any text to convert into a texture
- **Customizable Size**: Adjust texture dimensions (64x64 to 4096x4096 pixels)
- **Font Controls**:
- Multiple font options (system-dependent)
- Adjustable font size (8-200px)
- Text alignment (left, center, right)
- **Color Controls**:
- Text color picker with alpha
- Background color picker with alpha
- Transparent background option
- **Layout Options**:
- Adjustable padding around text
- Professional text positioning
- **Blender Integration**:
- Automatic image texture node creation in Shader Editor
- Works in both Shader Editor and 3D Viewport
- Generated textures are packed into the .blend file
## Installation
### Method 1: Modern Blender 4.0+ (Recommended)
1. Download the addon files (`blender_manifest.toml` and `__init__.py`)
2. Create a folder named `text_texture_generator`
3. Place both files in this folder
4. In Blender, go to `Edit > Preferences > Add-ons`
5. Click `Install from Disk` and select the folder
6. Enable the "Text Texture Generator" addon
### Method 2: Traditional Installation
1. Download the `__init__.py` file
2. In Blender, go to `Edit > Preferences > Add-ons`
3. Click `Install from Disk` and select the `__init__.py` file
4. Enable the "Text Texture Generator" addon
## Usage
### In Shader Editor:
1. Select a material with nodes enabled
2. Open the Shader Editor
3. Press `N` to open the side panel
4. Navigate to the "Text Texture" tab
5. Configure your text and settings
6. Click "Generate Texture"
7. The texture node will be automatically added to your material
### In 3D Viewport:
1. Press `N` to open the side panel
2. Navigate to the "Text Texture" tab
3. Configure your text and settings
4. Click "Generate Texture"
5. Find your texture in the Image Editor or use it in materials
## Settings Reference
### Text Settings
- **Text**: The text to render (up to 1024 characters)
- **Font**: System font selection (varies by OS)
- **Font Size**: Size of the text in pixels (8-200)
- **Alignment**: Text alignment (left, center, right)
- **Padding**: Space around text in pixels (0-100)
### Texture Settings
- **Width/Height**: Texture dimensions in pixels (64-4096)
- **Text Color**: RGBA color picker for text
- **Transparent Background**: Enable/disable background transparency
- **Background Color**: RGBA color picker for background (when not transparent)
## System Requirements
- Blender 4.0.0 or newer
- Python 3.10+ (included with Blender)
- Pillow library (automatically installed via pip)
## Supported Fonts
The addon includes several built-in font options that vary by operating system:
### Windows
- Arial, Times New Roman, Courier New, Calibri, Segoe UI
### macOS
- Arial, Times New Roman, Courier New, Helvetica, SF Pro Display, Menlo
### Linux
- DejaVu Sans, DejaVu Serif, DejaVu Sans Mono, Ubuntu
## Dependencies
The addon automatically installs required dependencies:
- **Pillow** (>=10.0.0): For image generation and text rendering
## Troubleshooting
### Common Issues
1. **"Failed to generate texture" error**:
- Ensure Pillow is installed (addon does this automatically)
- Check that your text isn't empty
- Verify texture dimensions are within limits
2. **Font not displaying correctly**:
- Try using "Default" font option
- Some system fonts may not be available
- Custom font paths vary by system
3. **Texture appears in wrong location**:
- In Shader Editor: Ensure you have a material selected
- Check the generated image in the Image Editor
- Look for the texture in `bpy.data.images`
### Performance Notes
- Large textures (2048x2048+) may take longer to generate
- Very long text strings may affect performance
- Generated textures are stored in memory and packed with the .blend file
## Development
### File Structure
```
text_texture_generator/
├── blender_manifest.toml # Modern addon manifest
├── __init__.py # Main addon code
└── README.md # This file
```
### Contributing
Feel free to submit issues and enhancement requests. The addon is designed to be simple and focused on core text texture generation functionality.
## License
GPL-3.0-or-later
## Author
Marc Mintel <marc@mintel.me>
## Changelog
### Version 1.0.0
- Initial release
- Text to texture conversion
- Customizable fonts, colors, and sizing
- Transparent background support
- Automatic Blender integration
- Cross-platform font support

1184
__init__.py Normal file

File diff suppressed because it is too large Load Diff

19
blender_manifest.toml Normal file
View File

@@ -0,0 +1,19 @@
schema_version = "1.0.0"
id = "text_texture_generator"
version = "1.0.0"
name = "Text Texture Generator"
tagline = "Generate image textures from text with customizable styling"
maintainer = "Marc Mintel <marc@mintel.me>"
type = "add-on"
support = "COMMUNITY"
tags = ["Material", "Shader", "Texture", "Text", "Image"]
blender_version_min = "4.0.0"
license = ["GPL-3.0-or-later"]
# Dependencies
[dependencies]
pillow = ">=10.0.0"