Skip to content

Updated for 4.21.0 #2

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 7 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
71 changes: 56 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,34 +1,75 @@
# Simple SQLite3 Source integration for Unreal Engine 4

Updated to work with Unreal Engine 4.21

# History

Based on [SQLite3UE4 Plugin by Jussi Saarivirta & KhArtNJava](https://github.com/KhArtNJava/SQLite3UE4/) but with compiling SQLite3 as part of the module code, this opens up compiling it (hopefully) on all platforms without any extra process.

Please report any problems to the [issues tracker](https://github.com/cindustries/unreal-sqlite3/issues) on this GitHub, or join us at [#unrealengine on irc.freenode.net](https://webchat.freenode.net/?channels=#unrealengine)), you can msg me under **Getty**.
(https://github.com/KhArtNJava/SQLite3UE4/)
(https://github.com/cindustries/unreal-sqlite3)
(https://github.com/Squareys/unreal-sqlite3)


# Difference to SQLite3UE4

SQLite3UE4 integrates sqlite3 as a ThirdParty module, which leads to a chain of complexity and also requires people to build the sqlite3 library before using it. On CISQLite3, we integrated the sqlite3 code directly into the module, and so it gets linked like the rest of the module on compile.

# Works On

Compiled and basic functionality:

OS | Tested
---|-------
Windows x64 | ✓
Android | ✓
# Compiled and Tested on

UE4 Version | Tested
---|-------
4.20.x | ✓
4.19.x | ✓
Windows x64 | 4.21.0 | ✓

# Installation

Copy this plugin (like Download as ZIP) into the folder **Plugins/CISQLite3** on your project and a start of the project should compile the plugin automatically, if the project is C++. If you don't have a C++ project, then you can just make one for the sole purpose of compiling this plugin. Alternative you can install it as Engine Plugin in the Engine Plugins directory (like **Epic Games/4.12/Engine/Plugins/Runtime/CISQLite3**).

# Usage
## CISQLite3.Build.cs

```c++
PublicIncludePaths.AddRange(
new string[] {
"CISQLite3/Public"
}
);

PrivateIncludePaths.AddRange(
new string[] {
"CISQLite3/Private"
}
);
```

For use direct in project change to:

```c++
PublicIncludePaths.AddRange(
new string[] {
}
);

PrivateIncludePaths.AddRange(
new string[] {
}
);
```

To avoid compile error for "SQLiteDatabase.h" not found, add the plugin to your {Project}.Build.cs as follows:

## Project.Build.cs

```c++
using UnrealBuildTool;

public class Project : ModuleRules
{
public Project(ReadOnlyTargetRules Target) : base(Target)
{
PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs;

(More usages to come....)
PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "HeadMountedDisplay" , "CISQLite3" });
}
}
```

## C++

Expand Down
2 changes: 2 additions & 0 deletions Source/CISQLite3/CISQLite3.Build.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ public class CISQLite3 : ModuleRules
public CISQLite3(ReadOnlyTargetRules Target) : base(Target)
{

PrivatePCHHeaderFile = "Private/CISQLite3PrivatePCH.h";

PublicIncludePaths.AddRange(
new string[] {
"CISQLite3/Public"
Expand Down